ALGORITMA &
PRAKTIKUM ALGORITMA
PEMROGRAMAN - I
FAKULTAS TEKNIK
UNIVERSITAS IBNU SINA
2020
Bab 3
ALGORITMA DALAM BENTUK
FLOWCHART
Tominanto, S.Kom.,M.Cs
Pendahuluan
F
lowchart atau bagan alir adalah skema atau bagan (chart) yang menunjukkan aliran
(flow) di dalam suatu program secara logika. Flowchart merupakan alat yang banyak
digunakan untuk menggambarkan algoritma dalam bentuk notasi-notasi tertentu.
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar
proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan demikian
setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan
dengan garis penghubung. Dengan menggunakan flowchart akan memudahkan untuk
melakukan pengecekan bagian-bagian yang terlupakan dalam analisis suatu permasalahan. Di
samping itu flowchart juga berguna sebagai fasilitas untuk berkomunikasi antara pemrogram
yang bekerja dalam tim pada suatu proyek.
Dalam membuat algoritma, diperlukan suatu mekanisme atau alat bantu untuk
menuangkan hasil pemikiran mengenai langkah-langkah penyelesaian masalah yang
sistematis dan terurut. Pada dasarnya untuk bisa menyusun solusi diperlukan kemampuan
problem-solving yang baik. Oleh karena itu, sebagai sarana untuk melatih kemampuan
tersebut terdapat sebuah tool (alat) yang dapat digunakan, yaitu flowchart. Secara formal,
flowchart juga didefinisikan sebagai skema penggambaran dari algoritma atau proses.
Modul pembelajaran ini membahas tentang bentuk penyajian algoritma dalam bentuk
flowchart. Setelah menyelesaikan modul pembelajaran ini, diharapkan mahasiswa mampu
memahami penyajian algoritma dalam bentuk flowchart mulai dari pengantar tentang
flowchart sampai dengan membuat algoritma dalam bentuk flowchart secara benar sehingga
sehingga dapat digunakan sebagai dasar untuk melanjutkan topik dan bab selanjutnya.
79
Topik 1
Pengantar Flowchart
A. DEFINISI FLOWCHART
80
2. Kegiatan di dalam bagan alir harus ditunjukkan dengan jelas.
3. Harus ditunjukkan dari mana kegiatan akan dimulai dan dimana akan berakhirnya.
4. Masing-masing kegiatan di dalam bagan alir sebaiknya digunakan suatu kata yang
mewakili suatu pekerjaan, misalnya:
- "Persiapkan" dokumen
- "Hitung" gaji
5. Masing-masing kegiatan di dalam bagan alir harus didalam urutan yang semestinya.
6. Kegiatan yang terpotong dan akan disambung di tempat lain harus ditunjukkan dengan
jelas menggunakan simbol penghubung.
7. Gunakanlah simbol-simbol bagan alir yang standar.
B. JENIS-JENIS FLOWCHART
Berdasarkan fungsi dan symbol-simbol yang digunakannya flowchart terbagi atas lima
jenis, yaitu:
1. Flowchart Sistem (System Flowchart)
Flowchart sistem merupakan bagan yang menunjukkan alur kerja atau apa yang sedang
dikerjakan di dalam sistem secara keseluruhan dan menjelaskan urutan dari prosedur-
prosedur yang ada di dalam sistem. Dengan kata lain, flowchart ini merupakan deskripsi secara
grafik dari urutan prosedur-prosedur yang terkombinasi yang membentuk suatu sistem.
Flowchart sistem terdiri dari data yang mengalir melalui sistem dan proses yang
mentransformasikan data itu. Data dan proses dalam flowchart sistem dapat digambarkan
secara online (dihubungkan langsung dengan komputer) atau offline (tidak dihubungkan
langsung dengan komputer, misalnya mesin tik, cash register atau kalkulator). Contoh
sederhana untuk flowchart sistem dapat dilihat pada Gambar 3.1 berikut ini :
81
Gambar 3.1 Contoh flowchart sistem
82
Gambar 3.2 Flowchart dokumen pembuatan kartu anggota perpustakaan
83
sehingga hasilnya lebih menyenangkan dan tanpa ada salah pengertian. Contoh flowchart
skematik ditunjukkan pada Gambar 3.3 berikut ini :
84
Contoh flowchart program ditunjukkan pada gambar 3.4 dan 3.5 berikut ini:
85
5. Flowchart Proses (Process Flowchart)
Flowchart proses merupakan teknik penggambaran rekayasa industrial yang memecah
dan menganalisis langkah-langkah selanjutnya dalam suatu prosedur atau sistem. Flowchart
proses memiliki lima simbol khusus seperti disajikan pada Gambar 3.6 berikut ini:
86
Gambar 3.7 Contoh Flowchart proses
D. SIMBOL-SIMBOL FLOWCHART
87
Gambar 3.8 Simbol-simbol flowchart
88
Gambar 3.8 Simbol-simbol flowchart (lanjutan)
89
Gambar 3.8 Simbol-simbol flowchart (lanjutan)
90
Gambar 3.8 Simbol-simbol flowchart (lanjutan)
91
Gambar 3.8 Simbol-simbol flowchart (lanjutan)
Latihan
Untuk dapat memperdalam pemahaman Anda mengenai materi di atas, kerjakanlah Latihan
berikut!
92
Petunjuk Jawaban Latihan
Untuk membantu Anda dalam mengerjakan soal latihan tersebut silahkan pelajari
kembali materi tentang pengantar flowchart yang terdiri dari : definisi flowchart, jenis-jenis
flowchart, dan symbol-simbol flowchart.
Ringkasan
1. Flowchart merupakan gambar atau bagan yang memperlihatkan urutan atau langkah-
langkah dari suatu program dan hubungan antar proses beserta pernyataannya.
2. Flowchart didefinisikan juga sebagai bagan-bagan yang mempunyai arus yang
menggambarkan langkah-langkah penyelesaian suatu masalah.
3. Tujuan utama flowchart adalah untuk menggambarkan suatu tahapan penyelesaian
masalah secara sederhana, terurai, rapi dan jelas dengan menggunakan simbol-simbol
yang standar.
4. Pada waktu akan menggambar suatu bagan alir, analis sistem atau pemrogam dapat
mengikuti pedoman-pedoman untuk membuat flowchart.
5. Terdapat lima jenis flowchart yaitu: Flowchart Sistem, Flowchart Dokumen Flowchart
Skematik, Flowchart Program dan Flowchart Proses.
6. Simbol-simbol flowchart yang biasanya untuk membuat sebuah algoritma adalah
simbol-simbol flowchart standar yang dikeluarkan oleh ANSI dan ISO.
93
Tes 1
Pilihlah salah satu jawaban yang paling benar!
2) Berikut ini yang bukan merupakan tujuan dari pembuatan flowchart adalah ….
A. Menggambarkan suatu tahapan penyelesaian masalah
B. Secara sederhana, terurai, rapi dan jelas
C. Menggunakan simbol-simbol yang standar
D. Mempermudah penggabungan program
3) Flowchart yang merupakan deskripsi secara grafik dari urutan prosedur-prosedur yang
terkombinasi yang membentuk suatu sistem disebut ….
A. Flowchart Dokumen
B. Flowchart Sistem
C. Flowchart Skematik
D. Flowchart Proses
4) Flowchart yang tidak hanya menggunakan simbol-simbol flowchart standar, tetapi juga
menggunakan gambar-gambar komputer, peripheral, form-form atau peralatan lain
yang digunakan dalam sistem disebut ….
A. Flowchart Dokumen
B. Flowchart Sistem
C. Flowchart Skematik
D. Flowchart Program
94
5) Perhatikan gambar di berikut ini:
95
Topik 2
Membuat Algoritma Dalam Bentuk
Flowchart
A. LANGKAH-LANGKAH MEMBUAT FLOWCHART
Pembuatan sebuah flowchart sebenarnya tidak ada kaidah yang baku. Flowchart
merupakan gambaran hasil analisa suatu masalah, Flowchart dapat bervariasi antara satu
pemrograman dengan pemrograman lainnya. Ada beberapa tips untuk membuat flowchart
yang benar, antara lain:
1. Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya
proses menjadi singkat.
2. Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk
memperjelas.
3. Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.
Flowchart dibuat dengan tujuan utama untuk membuat rangkaian program menjadi
lebih simpel dan mudah dipelajari oleh pengguna awam. Membuat flowchart dalam sebuah
halaman memiliki prosedur tertentu, harus sesuai dengan berbagai ketentuan yang berlaku.
Berikut cara membuat flowchart yang baik :
1. Persiapkan tiga bagian utama flowchart yang akan menjadi jantung atas percabangan
flowchart. Tiga bagian itu adalah bagian input, bagian proses, serta bagian output.
2. Buat gambar simbol pada lembar pembuatan flowchart sebagai bagian untuk tempat
mengisi penjelasan.
3. Sesuaikan posisi simbol-simbol tersebut dengan tiga bagian utama flowchart yang telah
ditentukan sebagai input, proses, dan output.
4. Hubungkan simbol-simbol yang telah dibuat dengan konektor garis berpanah. Lakukan
secara cermat, jangan salah menggambarkan arah panah.
5. Berikan keterangan dalam setiap simbol, dan jika diperlukan untuk membuat
percabangan dari diagram arus atas tiga bagian utama yang telah ada, maka lakukan
dengan cara yang sama, yaitu dengan membuat gambar simbol pada bagian yang
diperlukan (simbol usahakan berbeda dari simbol utama).
6. Koneksikan simbol-simbol yang baru dibuat dengan bagian utama flowchart tersebut
dengan konektor berpanah, sesuaikan arah panahnya, dan beri keterangan dengan
singkat dan jelas.
96
7. Lakukan hingga semua bagian yang diperlukan selesai digambar dalam bentuk diagram
di atas kertas.
2. Menggambar Input/Output
97
3. Menggambar Proses
4. Menampilkan Output
Penggambaran tiga bagian itu dari flowchart yaitu bagian input, bagian proses, serta
bagian output dapat diperjelas dengan contoh studi kasus algoritma penjumlahan dua
bilangan yang disajikan dalam bentuk flowchart berikut ini :
98
Menerima input
nilai A dan nilai B
Menghitung C adalah
nilai A ditambah nilai B
Menampilkan output
nilai C
Untuk menghitung luas dan keliling lingkaran dibutuhkan data-data berupa radius lingkaran
dan nilai konstanta π (kadang kala ditulis PI). Secara matematis rumus menghitung luas dan
keliling lingkaran adalah sebagai berikut :
Luas lingkaran = π * radius * radius
Keliling = 2 * π * radius
99
Dalam kasus ini PI adalah konstanta yang nilainya dalam 20 desimal adalah
3.14159265358979323846. Langkah penyelesaian masalah dalam bentuk flowchart sebagai
berikut:
a. Struktur data yang dibutuhkan
Struktur data yang dibutuhkan membuat algoritma dalam bentuk flowchart untuk
menghitung luas dan keliling lingkaran adalah:
1) PI : sebagai konstanta yang didefinisikan bertipe data pecahan dan bernilai 3.14
2) Radius : sebagai variabel yang menampung panjang radius lingkaran yang didefinisikan
bertipe data pecahan
3) Luas : sebagai variabel penampung nilai perhitungan luas lingkaran
4) Keliling : sebagai variabel penampung nilai perhitungan keliling lingkaran
c. Input
Masukan yang diperlukan dalam permasalahan ini adalah bilangan yang melambangkan
panjang radius lingkaran dan disimpan dalam variabel radius sehingga input pada flowchart
digambarkan sebagai berikut:
d. Output
Keluaran permasalahan ini adalah 2 buah nilai yaituluas dan keliling lingkaran, sehingga
output pada flowchart dapat dibuat sebagai berikut:
100
Gambar 3.17 Output luas dan keliling
e. Proses penyelesaian
Terdapat dua buah kegiatan yang terjadi dalam proses dan dilakukan secara berurutan
(sequences), yaitu perhitungan luas dan keliling lingkaran sesuai rumus yang telah
dideklarasikan sebelumnya. Dalam penulisan flowchart dua kegiatan ini bisa digabung seperti
berikut ini :
f. Flowchart keseluruhan
Setelah langkah-langkah per proses kegiatan tersebut maka flowchart secara
keseluruhan algoritma perhitunga3n luas dan keliling lingkaran adalah sebagai berikut :
101
Gambar 3.20 Flowchart perhitungan luas dan keliling lingkaran
Untuk menghitung konversi suhu dari satuan Celcius menjadi Fahrenheit dibutuhkan
data-data berupa nilai suhu dalam satuan Celcius. Secara matematis rumus menghitung
konversi suhu dari satuan Celcius menjadi Fahrenheit adalah :
F = C * 1.8 + 32
102
2) C : sebagai variabel yang didefinisikan bertipe data pecahan untuk menyimpan suhu
dalam satuan Celcius.
b. Input
Masukan yang diperlukan dalam permasalahan ini adalah bilangan yang melambangkan
suhu dalam satuan Celcius dan disimpandalam variabel C, sehingga input pada flowchart
dapat dibuat sebagai berikut :
d. Proses penyelesaian
Proses yang terjadi adalah perhitungan konversi suhu dari Celcius menjadi Fahrenheit
dengan menggunakan rumus yang telah dideklarasikan sebelumnya. Dari sini, flowchart
proses dapat dibuat sebagai berikut:
103
Gambar 3.25 Proses perhitungan F
e. Flowchart keseluruhan
Flowchart perhitungan koversi suhu secara keseluruhan adalah sebagai berikut:
104
pengecekan apakah bilangan=21 atau bilangan=27, jika iya maka tidak perlu ditampilkan ke
layar. Karena lebih dari satu bilangan yang di cek apakah ganjil atau genap dan apakah
bilangan sama dengan 21 atau sama dengan 27 maka dalam penyelesaian masalah dibutuhkan
perulangan proses.
a. Struktur data yang dibutuhkan
Untuk menyelesaikan permasalahan ini hanya dibutuhkan satu variabel saja yaitu Bil
sebagai variabel yang menyimpan nilai bilangan yangakan ditampilkan ke layar.
c. Input
Dalam flowchart ini tidak diperlukan masukkan sama sekali karena batas atas dan batas
bawah bilangan sudah didefinisikan dalam soal.
d. Output
Keluaran permasalahan ini adalah sejumlah bilangan ganjil antara 10 dan 30 kecuali 21
dan 27. Bilangan ini akan di tampilkan beberapa kali sesuai kondisi yang ada sehingga kegiatan
menampilkan bilangan ke layar dilakukan dalam perulangan proses, sehingga output pada
flowchart dapat dibuat sebagai berikut:
e. Proses penyelesaian
Sebagai dijelaskan pada sebelumnya, flowchart akan menampilkan bilangan ganjil saja
sehingga harus dilakukan pengecekan kondisi apakah bilangan termasuk bilangan ganjil.
Untuk itu dilakukan operasi aritmatika yang melibatkan operator % (modulo), jika bilangan di
modulo 2 menghasilkan nilai 1 maka bilangan tersebut adalah bilangan ganjil dan harus
105
ditampilkan ke layar, sedang bila hasilnya adalah 0 maka bilangan tersebut adalah bilangan
genap dan tidak perlu ditampilkan ke layar. Tetapi harus ditambahkan pengecekan kondisi
sekali lagi yaitu bahwa tidak semua bilangan ganjil akan ditampilkan ke layar, bilangan 21 dan
27 tidak ditampilkan. Oleh karena itu tambahkanpengecekan apakah bilangan=21 atau
bilangan=27, jika iya maka tidak perlu ditampilkan ke layar. Karena lebih dari satu bilangan
yang di cek apakah ganjil atau genap dan apakah bilangan sama dengan 21 atau sama dengan
27 maka dalam penyelesaian masalah dibutuhkan perulangan proses. Dari sini, flowchart
Proses dapat direpresentasikan sebagai berikut :
f. Flowchart Keseluruhan
Flowchart menampilkan bilangan ganjil secara keseluruhan adalah sebagai berikut :
106
4. Studi Kasus Algoritma Input Data Pasien
Studi kasus input data pasien adalah contoh penerapan flowchart dalam bidang rekam
medis dan informasi kesehatan. Proses ini bisanya terjadi pada saat registrasi pasien baik
rawat jalan maupun rawat inap. Permasalahan pada kasus ini adalah membuat flowchart
untuk menggambarkan proses input data pasien pada sebuah media penyimpanan tabel atau
basis data tertentu.
Proses input data pasien diawali dari proses pengisian variabel nomer rekam medis
pasien, dilanjutkan validasi untuk mencari data apakah nomer rekam medis tersebut sudah
pernah digunakan atau belum, jika sudah ada tampil komentar “No Rekam Medis Sudah Ada,
Ganti Yang Lain !”, dan jika tidak ditemukan dapat melanjutkan input data variabel selanjutnya
yaitu nama pasien, tempat lahir, tanggal lahir, jenis kelamin, dan alamat, kemudian dilakukan
proses simpan data ke database.
a. Struktur data yang dibutuhkan
Untuk menyelesaikan permasalahan ini dibutuhkan :
1) no_rm : variabel untuk menyimpan data nomer rekam medis
2) nama_pas : variabel untuk menyimpan data nama pasien
3) tempat_lhr : variabel untuk menyimpan data tempat lahir
4) tanggal_lhr : variabel untuk menyimpan data tanggal lahir
5) jenis_klm : variabel untuk menyimpan data jenis kelamin
6) alamat : variabel untuk menyimpan data alamat
No_rm=varchar(6), nama_pas=varchar(30),
tempat_lhr=varchar(15), tanggal_lhr=date,
jenis_klm=varchar(1), alamat=varchar(30)
c. Input
Dalam flowchart ini diperlukan masukkan pada variabel no_rm, nama_pas, tempat_lhr,
tanggal_lhr, jenis_klm, dan alamat. Flowchart inputnya dapat digambarkan sebagai berikut:
107
Input no_rm
d. Output
Keluaran permasalahan ini adalah komentar validasi input dan penyimpanan data
pasien, sehingga output pada flowchart dapat dibuat sebagai berikut:
e. Proses penyelesaian
Sebagai dijelaskan pada sebelumnya, flowchart input data pasien diawali dari proses
pengisian variabel nomer rekam medis pasien, dilanjutkan validasi untuk mencari data apakah
nomer rekam medis tersebut sudah pernah digunakan atau belum, jika sudah ada tampil
komentar “No Rekam Medis Sudah Ada, Ganti Yang Lain!”, dan jika tidak ditemukan dapat
melanjutkan input data variabel selanjutnya yaitu nama pasien, tempat lahir, tanggal lahir,
jenis kelamin, dan alamat, kemudian dilakukan proses simpan data ke database. Dari sini,
flowchart Proses dapat direpresentasikan sebagai berikut:
108
Cari Y
Cetak “No Rekam Medis Sudah
no_rm di
Ada, Ganti Yang Lain !”
tabel
pasien
109
f. Flowchart Keseluruhan
Flowchart input data pasien secara keseluruhan adalah sebagai berikut:
Mulai
Input no_rm
Cari Y
Cetak “No Rekam Medis Sudah
no_rm di
Ada, Ganti Yang Lain !”
tabel
pasien
Selesai
Latihan
Untuk dapat memperdalam pemahaman Anda mengenai materi di atas, kerjakanlah Latihan
berikut!
110
3) Buatlah flowchart untuk menghitung luas dan keliling sebuah segitiga sama sisi,
diketahui sebagai input panjang sisi, sebagai output adalah luas dan keliling segitiga
sama sisi?
Untuk membantu Anda dalam mengerjakan soal latihan tersebut silakan pelajari
kembali materi tentang langkah-langkah membuat flowchart dan menerapkan flowchart
untuk membuat algoritma.
Ringkasan
Tes 2
Pilihlah salah satu jawaban yang paling benar!
1) Berikut ini yang bukan merupakan kaidah pembuatan flowchart yang baik adalah .…
A. Hindari pengulangan proses yang tidak perlu
B. Jalannya proses dari atas ke bawah
C. Diawali “Start” dan diakhiri “End”
D. Dihubungkan dengan garis tanpa panah
111
3) Pada penerapan flowchart untuk membuat algoritma terdapat langkah membuat
deklarasi dan inisialisasi, apakah yang dibuat pada langkah ini…
A. Menerima input
B. Memproses variabel
C. Membuat variabel
D. Menampilkan variabel
5) Simbol keputusan atau decision pada flowchart memiliki tiga aliran data. Pernyataan
yang benar mengenai hal tersebut adalah :
A. Satu aliran data sebagai input, satu aliran data sebagai proses dan satu aliran data
sebagai output
B. Satu aliran data sebagai input, satu aliran data sebagai proses dan satu aliran data
sebagai output benar
C. Satu aliran data sebagai input, satu aliran data sebagai output benar dan satu
aliran data sebagai output salah
D. Satu aliran data sebagai input, satu aliran data sebagai proses benar dan satu
aliran data sebagai output salah
112
Kunci Jawaban Tes
Tes 1
1) A
2) D
3) B
4) C
5) D
Tes 2
1) D
2) B
3) C
4) B
5) C
113
Glosarium
System Flowchart : bagan yang menunjukkan alur kerja atau apa yang sedang dikerjakan
di dalam sistem secara keseluruhan dan menjelaskan urutan dari
prosedur-prosedur yang ada di dalam sistem.
Document Flowchart : bagan yang berfungsi menelusuri alur form dan laporan sistem dari
satu bagian ke bagian lain baik bagaimana alur form dan laporan
diproses, dicatat dan disimpan.
Schematic Flowchart : bagan yang menggambarkan suatu sistem atau prosedur yang tidak
hanya menggunakan simbol-simbol flowchart standar, tetapi juga
menggunakan gambar-gambar komputer, peripheral, form-form atau
peralatan lain yang digunakan dalam sistem.
Program Flowchart : bagan yang merupakan keterangan yang lebih rinci tentang bagaimana
setiap langkah program atau prosedur sesungguhnya dilaksanakan.
Process Flowchart : bagan yang merupakan teknik penggambaran rekayasa industrial yang
memecah dan menganalisis langkah-langkah selanjutnya dalam suatu
prosedur atau sistem.
114
Daftar Pustaka
Ananda, D., A. Suryan, P. Mayadewi, L. Rasiana dan H. Kusmayadi. 2009. Algoritma dan
Pemrograman. Politeknik Telkom Bandung.
Barakbah, A.R; T. Karlita dan A.S. Ahsan. 2013. Logika dan Algoritma. Politeknik Elektronika
Negeri Surabaya.
Munir, R. 2007. Algoritma dan Pemrograman Dalam Bahasa Pascal dan C. Informatika.
Team Dosen. 2014. Analisa Dan Perancangan Sistem Informasi. Fakultas Ilmu Komputer
Universitas Mercu Buana.
115