Flowchart : Pengertian, Simbol, Aturan, dan Contohnya

Flowchart adalah diagram alir yang menggambarkan langkah algoritma dengan simbol. Pelajari simbol flowchart, aturannya, dan 4 contoh lengkap dengan kode Python.

Mapel
Pemrograman
Jenjang
SMP, SMA
Waktu baca
9 menit
Terbit
14 Oktober 2026
Penyusun
Risyad Raflan

Flowchart adalah diagram yang menggambarkan langkah-langkah sebuah algoritma memakai simbol-simbol standar yang dihubungkan dengan panah. Dalam bahasa Indonesia, flowchart disebut diagram alir atau bagan alir. Setiap bentuk simbol punya arti: oval untuk mulai dan selesai, jajar genjang untuk input/output, persegi panjang untuk proses, dan belah ketupat untuk keputusan. Dengan flowchart, urutan langkah, pilihan, dan perulangan terlihat sekilas sebelum ditulis menjadi kode program.

Apa Itu Flowchart?

Flowchart adalah salah satu cara menuliskan algoritma, yaitu langkah-langkah yang berurutan, jelas, dan ada akhirnya. Algoritma yang sama bisa ditulis sebagai kalimat biasa, sebagai pseudocode, atau digambar sebagai flowchart. Kelebihan flowchart: alurnya bisa diikuti dengan jari. Kamu bisa melihat langkah mana yang dikerjakan lebih dulu, di mana program memilih jalan, dan bagian mana yang diulang.

Flowchart dipakai di pelajaran Informatika, saat merancang program, dan juga di dunia kerja untuk menggambarkan prosedur, misalnya alur pendaftaran siswa baru. Programmer memakainya untuk menemukan kesalahan logika sebelum menulis kode, karena kesalahan di gambar lebih murah diperbaiki daripada kesalahan di program yang sudah jadi.

Simbol Flowchart dan Fungsinya

Simbol Bentuk Fungsi Contoh isi
Terminator Oval atau persegi panjang bersudut bulat Menandai mulai dan selesai Mulai, Selesai
Input/output Jajar genjang Menerima data atau menampilkan hasil Input panjang, Output luas
Proses Persegi panjang Perhitungan atau tindakan luas = panjang × lebar
Keputusan Belah ketupat Syarat dengan dua jalan keluar: Ya dan Tidak angka % 2 == 0?
Garis alir Panah Menunjukkan arah urutan langkah panah ke bawah
Konektor Lingkaran kecil berisi huruf atau angka Menyambung alur yang terputus di halaman yang sama A
Predefined process Persegi panjang dengan garis ganda di sisi kiri dan kanan Menjalankan proses yang sudah dijelaskan di flowchart lain Hitung rata-rata

Untuk menyambung flowchart yang berlanjut ke halaman lain, dipakai konektor antarhalaman berbentuk segi lima. Simbol predefined process mirip dengan memanggil fungsi di Python: detail langkahnya ditulis terpisah, lalu cukup dipanggil dengan namanya. Ide ini dibahas di materi fungsi Python.

Di contoh-contoh berikut, flowchart digambar dengan teks: ( ) untuk terminator, / / untuk input/output, [ ] untuk proses, < > untuk keputusan, serta | dan v untuk garis alir.

Aturan Membuat Flowchart

  1. Mulai dengan satu simbol Mulai dan akhiri dengan simbol Selesai.
  2. Susun alur dari atas ke bawah dan dari kiri ke kanan.
  3. Tulis satu langkah singkat di setiap simbol.
  4. Simbol proses dan input/output punya satu panah masuk dan satu panah keluar.
  5. Simbol keputusan selalu punya dua panah keluar yang diberi label Ya dan Tidak.
  6. Usahakan garis alir tidak saling bersilangan; gunakan konektor jika alurnya terlalu panjang.
  7. Pastikan setiap jalur berakhir di Selesai, tidak ada jalan buntu.
  8. Uji flowchart dengan data contoh, ikuti panahnya satu per satu, lalu periksa hasilnya.

Flowchart, Pseudocode, dan Algoritma

Pseudocode adalah algoritma yang ditulis dengan kalimat pendek mirip kode program, tetapi tidak terikat aturan bahasa pemrograman tertentu. Perbandingannya untuk soal luas persegi panjang:

Bentuk Contoh Kelebihan
Kalimat biasa Baca panjang dan lebar, kalikan, tampilkan hasilnya. mudah ditulis siapa saja
Pseudocode luas ← panjang × lebar dekat dengan kode program
Flowchart simbol yang dihubungkan panah alur dan cabang terlihat jelas
Kode Python luas = panjang * lebar bisa dijalankan komputer

Contoh Flowchart dan Program Python-nya

Contoh 1: Flowchart membuat mie instan (urutan)

Flowchart paling sederhana hanya berisi urutan (sequence): langkah dikerjakan satu per satu dari atas ke bawah tanpa pilihan.

                ( Mulai )
                    |
                    v
  [ Rebus 400 mL air sampai mendidih ]
                    |
                    v
     [ Masukkan mie, masak 3 menit ]
                    |
                    v
       [ Tuang bumbu ke mangkuk ]
                    |
                    v
    [ Tuang mie dan kuah, aduk rata ]
                    |
                    v
     / Output: mie siap disajikan /
                    |
                    v
               ( Selesai )

Versi Python-nya mencetak setiap langkah sesuai urutan:

air_ml = 400
lama_masak = 3
print("Mulai")
print(f"Rebus {air_ml} mL air sampai mendidih")
print(f"Masukkan mie, masak {lama_masak} menit sambil diaduk")
print("Tuang bumbu ke mangkuk")
print("Tuang mie dan kuahnya ke mangkuk, aduk rata")
print("Mie siap disajikan")
print("Selesai")

Keluarannya tujuh baris, dari Mulai sampai Selesai, persis mengikuti urutan simbol. Coba tukar langkah "tuang bumbu" dan "rebus air": program tetap berjalan, tetapi algoritmanya menjadi aneh. Komputer tidak memeriksa masuk akal atau tidaknya urutan; itu tugas pembuat algoritma. Jika ingin lebih rinci, "rebus sampai mendidih" bisa dipecah menjadi keputusan "Air sudah mendidih?" yang kembali ke langkah "tunggu" selama jawabannya Tidak.

Contoh 2: Flowchart menghitung luas persegi panjang

          ( Mulai )
              |
              v
  / Input panjang, lebar /
              |
              v
 [ luas = panjang × lebar ]
              |
              v
       / Output luas /
              |
              v
         ( Selesai )

Flowchart ini memakai pola input, proses, output. Pseudocode-nya:

MULAI
  BACA panjang, lebar
  luas ← panjang × lebar
  TAMPILKAN luas
SELESAI

Terjemahan ke Python dengan input():

panjang = float(input("Masukkan panjang: "))
lebar = float(input("Masukkan lebar: "))
luas = panjang * lebar
print("Luas persegi panjang =", luas)

Dengan masukan 8 dan 5, program mencetak Luas persegi panjang = 40.0. Versi dengan nilai tetap, yang keluarannya selalu Luas persegi panjang = 40:

panjang = 8
lebar = 5
luas = panjang * lebar
print("Luas persegi panjang =", luas)

Setiap simbol menjadi satu atau dua baris kode: jajar genjang input menjadi input(), persegi panjang proses menjadi rumus, dan jajar genjang output menjadi print(). Rumus luas dan keliling lainnya ada di materi keliling dan luas bangun datar.

Contoh 3: Flowchart bilangan genap atau ganjil (keputusan)

               ( Mulai )
                   |
                   v
            / Input angka /
                   |
                   v
         < angka % 2 == 0 ? >
         |                   |
        Ya                 Tidak
         |                   |
         v                   v
 / Output genap /    / Output ganjil /
         |                   |
         +---------+---------+
                   |
                   v
              ( Selesai )

Simbol keputusan berisi pertanyaan yang jawabannya hanya Ya atau Tidak. Kedua cabang bertemu lagi sebelum Selesai. Di Python, belah ketupat menjadi if dan else:

angka = 14
if angka % 2 == 0:
    print(angka, "adalah bilangan genap")
else:
    print(angka, "adalah bilangan ganjil")

Keluaran: 14 adalah bilangan genap, karena sisa 14 % 2 adalah 0. Ganti angkanya menjadi 9 untuk menguji cabang Tidak. Konsep pilihan ini dibahas di percabangan dalam algoritma dan, versi kodenya, di percabangan Python if else.

Contoh 4: Flowchart menghitung total belanja (perulangan)

Ada tiga barang dengan harga Rp12.000, Rp5.500, dan Rp8.000. Flowchart berikut menjumlahkannya satu per satu dengan penghitung i:

              ( Mulai )
                  |
                  v
       / Input daftar harga /
                  |
                  v
        [ total = 0, i = 0 ]
                  |
                  v
  +--> < i < banyak barang ? > --Tidak--+
  |               |                     |
  |               | Ya                  v
  |               v             / Output total /
  | [ total = total + harga[i] ]        |
  |               |                     v
  |               v                ( Selesai )
  |         [ i = i + 1 ]
  |               |
  +---------------+

Perulangan di flowchart terlihat sebagai panah yang kembali ke atas, ke simbol keputusan. Selama jawabannya Ya, harga berikutnya ditambahkan ke total. Terjemahan Python-nya:

harga = [12000, 5500, 8000]
total = 0
i = 0
while i < len(harga):
    total = total + harga[i]
    i = i + 1
print(f"Total belanja: Rp{total}")

Keluaran: Total belanja: Rp25500. Jejaknya:

Putaran i harga[i] total
awal 0 – 0
1 0 → 1 12000 12000
2 1 → 2 5500 17500
3 2 → 3 8000 25500

Saat i bernilai 3, syarat 3 < 3 bernilai False, jadi alur keluar lewat panah Tidak dan total dicetak. Di Python, perulangan yang sama bisa ditulis lebih ringkas dengan for h in harga:, bahkan cukup sum(harga). Bentuk-bentuk perulangan ini dibahas di perulangan dalam algoritma dan perulangan Python.

Kesalahan yang Sering Terjadi

Ringkasan

  • Flowchart adalah diagram alir yang menggambarkan algoritma dengan simbol standar dan panah.
  • Simbol utama: terminator (oval), input/output (jajar genjang), proses (persegi panjang), keputusan (belah ketupat), garis alir, konektor, dan predefined process.
  • Tiga pola dasar flowchart adalah urutan, keputusan, dan perulangan, yang di Python menjadi baris berurutan, if/else, dan while/for.
  • Uji flowchart dengan data contoh sebelum menerjemahkannya ke kode.

Pertanyaan yang Sering Diajukan

Apa perbedaan flowchart dan algoritma?

Algoritma adalah langkah-langkahnya, sedangkan flowchart adalah salah satu cara menuliskan langkah itu dalam bentuk gambar. Algoritma yang sama juga bisa ditulis sebagai kalimat biasa atau pseudocode.

Apa saja simbol flowchart yang paling penting?

Empat simbol yang hampir selalu muncul adalah terminator, input/output, proses, dan keputusan, yang dihubungkan dengan garis alir.

Apakah flowchart harus dibuat sebelum menulis program?

Tidak wajib, tetapi sangat membantu untuk soal yang memiliki banyak percabangan atau perulangan, karena kesalahan logika lebih mudah terlihat di gambar.

Aplikasi apa yang bisa dipakai untuk membuat flowchart?

Kertas dan pensil sudah cukup. Untuk versi digital, gunakan fitur bentuk (shapes) di aplikasi pengolah kata atau presentasi, atau aplikasi diagram gratis seperti diagrams.net.

Materi Terkait

Sumber belajar

Penjelasan dan contoh disusun ulang untuk materi ini; sumber dapat dibuka untuk belajar lebih lanjut.