Dari Resep Kopi Hingga Kode Program: Pecahkan Teka-teki Algoritma Pemrograman!

Selamat pagi, para calon programmer dan pemecah masalah di Bandar Lampung dan seluruh Indonesia! Di hari Sabtu yang cerah ini, 20 September 2025, mari kita bicara tentang “sihir”. Sihir yang membuat komputer bisa menjalankan game, aplikasi ojek online bisa menemukan driver terdekat, dan ATM bisa mengeluarkan uang dengan benar. Sihir ini punya nama asli: Algoritma Pemrograman.

Bagi banyak orang, kata “algoritma” terdengar rumit, matematis, dan mengintimidasi. Padahal, tanpa sadar, Anda menggunakan algoritma setiap hari. Pernah membuat secangkir kopi robusta Lampung? Urutan langkah-langkahnya—mulai dari merebus air, memasukkan bubuk kopi dan gula ke cangkir, menuangkan air panas, hingga mengaduknya—adalah sebuah algoritma!

Algoritma adalah serangkaian langkah-langkah logis dan terstruktur untuk menyelesaikan sebuah masalah. Dan pemrograman adalah seni “mengajarkan” algoritma tersebut kepada komputer dalam bahasa yang ia mengerti.

Artikel ini adalah gerbang awal Anda untuk menjadi seorang “penyihir” digital. Kita akan membedah tuntas konsep dasar algoritma dan logika pemrograman melalui contoh-contoh soal yang relevan dengan kehidupan sehari-hari. Lupakan dulu sintaks kode yang rumit, mari kita fokus melatih cara berpikirnya!

baca juga:Dari Pecahan Hingga Desimal: Kuasai 10 Tipe Soal Bilangan Rasional yang Sering Muncul


1. Fondasi Dasar: Pseudocode dan Flowchart, ‘Coretan’ Sebelum Ngoding

Sebelum seorang koki memasak, ia akan menulis resepnya. Sebelum seorang arsitek membangun, ia akan membuat denahnya. Di dunia pemrograman, kita punya dua “alat corat-coret” utama untuk merancang algoritma:

  • Pseudocode (Kode Semu): Ini adalah cara menuliskan langkah-langkah algoritma menggunakan bahasa manusia yang sederhana dan terstruktur, tapi sedikit “mirip” kode program. Tujuannya agar mudah dibaca oleh siapa saja.
  • Flowchart (Diagram Alir): Ini adalah cara visual untuk menggambarkan alur algoritma menggunakan simbol-simbol standar (oval untuk mulai/selesai, jajar genjang untuk input/output, persegi panjang untuk proses, dan belah ketupat untuk keputusan).

Contoh Soal 1: Buatlah algoritma dalam bentuk Pseudocode dan Flowchart untuk menghitung luas sebuah persegi panjang.

Jawaban dan Pembahasan:

a. Pseudocode:

PROGRAM HitungLuasPersegiPanjang

DEKLARASI
  panjang, lebar, luas: integer

ALGORITMA
  1. BACA nilai panjang
  2. BACA nilai lebar
  3. HITUNG luas = panjang * lebar
  4. TULISKAN nilai luas

SELESAI
  • Penjelasan:
    • PROGRAM: Judul dari algoritma kita.
    • DEKLARASI: Bagian untuk “mempersiapkan” wadah atau variabel yang akan kita gunakan (panjang, lebar, luas).
    • ALGORITMA: Bagian inti yang berisi langkah-langkah logisnya, mulai dari membaca input (BACA), memprosesnya (HITUNG), hingga menampilkan hasilnya (TULISKAN).

b. Flowchart: (Deskripsi Flowchart karena tidak bisa menggambar)

  1. Dimulai dengan simbol Oval bertuliskan “Mulai”.
  2. Anak panah menunjuk ke simbol Jajar Genjang bertuliskan “Input Panjang, Lebar”.
  3. Anak panah menunjuk ke simbol Persegi Panjang bertuliskan “Proses: Luas = Panjang * Lebar”.
  4. Anak panah menunjuk ke simbol Jajar Genjang bertuliskan “Output Luas”.
  5. Anak panah menunjuk ke simbol Oval bertuliskan “Selesai”.

Kedua cara ini menghasilkan tujuan yang sama: sebuah “resep” yang jelas dan tidak ambigu untuk diikuti.


2. Percabangan (IF-ELSE): Saat Komputer Harus Memilih Jalan

Dalam hidup, kita sering membuat keputusan. “JIKA hujan, MAKA saya bawa payung, JIKA TIDAK, MAKA saya tidak bawa payung.” Komputer juga bisa diajarkan untuk membuat keputusan seperti ini menggunakan logika percabangan.

Contoh Soal 2: Seorang siswa dinyatakan “LULUS” jika nilainya 75 atau lebih, dan dinyatakan “GAGAL” jika nilainya di bawah 75. Buatlah algoritma dalam bentuk pseudocode untuk menentukan kelulusan siswa.

Jawaban dan Pembahasan:

PROGRAM CekKelulusanSiswa

DEKLARASI
  nilai: integer
  keterangan: string

ALGORITMA
  1. BACA nilai
  2. JIKA nilai >= 75 MAKA
  3.   keterangan = "LULUS"
  4. JIKA TIDAK (ELSE)
  5.   keterangan = "GAGAL"
  6. AKHIR JIKA (ENDIF)
  7. TULISKAN keterangan

SELESAI
  • Penjelasan:
    • Logika utamanya ada di baris 2-6. Komputer akan “melihat” nilai yang dimasukkan.
    • Jika kondisi nilai >= 75 terpenuhi (benar), maka ia akan menjalankan perintah di baris 3.
    • Jika kondisi itu tidak terpenuhi (salah), maka ia akan melompat dan menjalankan perintah di bagian JIKA TIDAK (ELSE), yaitu baris 5.
    • AKHIR JIKA menandakan akhir dari blok keputusan.

3. Perulangan (LOOPING): Jurus ‘Anti Capek’ untuk Tugas Berulang

Bayangkan Anda disuruh menulis “Saya tidak akan mengobrol di kelas” sebanyak 100 kali. Capek, kan? Komputer tidak pernah capek. Kita bisa menyuruhnya melakukan tugas yang sama berulang-ulang dengan sangat cepat menggunakan perulangan atau looping.

Contoh Soal 3: Buatlah algoritma dalam bentuk pseudocode untuk menampilkan semua bilangan dari 1 sampai 10.

Jawaban dan Pembahasan:

PROGRAM CetakAngkaSatuSampaiSepuluh

DEKLARASI
  i: integer

ALGORITMA
  1. UNTUK i DARI 1 SAMPAI 10, LAKUKAN:
  2.   TULISKAN nilai i
  3. AKHIR ULANG (END FOR)

SELESAI
  • Penjelasan:
    • Perintah UNTUK i DARI 1 SAMPAI 10 adalah perintah perulangan (FOR loop).
    • Ini artinya: “Hai komputer, siapkan sebuah variabel i yang awalnya bernilai 1. Selama nilai i belum melewati 10, lakukan semua perintah di dalamnya. Setiap selesai satu putaran, tambahkan nilai i dengan 1.”
    • Hasilnya, komputer akan menjalankan perintah TULISKAN i saat i=1, lalu i=2, i=3, dan seterusnya hingga i=10. Jauh lebih efisien daripada menulis 10 baris perintah TULISKAN.

4. Studi Kasus Lengkap: Algoritma ‘Kasir Toko Kelontong’

Sekarang, mari kita gabungkan semua konsep yang telah kita pelajari (input/output, proses, dan percabangan) dalam sebuah studi kasus yang lebih lengkap.

Skenario: Buatlah sebuah algoritma untuk mesin kasir sederhana. Kasir akan memasukkan harga satu barang dan jumlah barang yang dibeli. Program harus menghitung total harga. Jika total harga lebih dari Rp 100.000, pelanggan mendapatkan diskon 10%. Terakhir, program harus menampilkan total harga, diskon (jika ada), dan harga akhir yang harus dibayar.

Jawaban (Pseudocode):

PROGRAM KasirTokoKelontong

DEKLARASI
  harga_barang, jumlah_beli, total_harga, diskon, harga_akhir: real

ALGORITMA
  1. TULISKAN "Masukkan harga barang:"
  2. BACA harga_barang
  3. TULISKAN "Masukkan jumlah beli:"
  4. BACA jumlah_beli

  5. total_harga = harga_barang * jumlah_beli
  6. diskon = 0  // Awalnya, diskon diatur 0

  7. JIKA total_harga > 100000 MAKA
  8.   diskon = 0.10 * total_harga
  9. AKHIR JIKA

  10. harga_akhir = total_harga - diskon

  11. TULISKAN "--- STRUK PEMBAYARAN ---"
  12. TULISKAN "Total Harga  : Rp ", total_harga
  13. TULISKAN "Diskon       : Rp ", diskon
  14. TULISKAN "Harga Akhir  : Rp ", harga_akhir
  15. TULISKAN "-------------------------"

SELESAI
  • Bedah Algoritma:
    • Baris 1-4: Bagian Input.
    • Baris 5-6: Bagian Proses awal, menghitung total dan mengasumsikan belum ada diskon.
    • Baris 7-9: Bagian Keputusan/Percabangan. Program mengecek apakah syarat diskon terpenuhi. Jika ya, nilai variabel diskon akan diperbarui. Jika tidak, nilai diskon tetap 0.
    • Baris 10: Bagian Proses akhir, menghitung harga final.
    • Baris 11-15: Bagian Output, menampilkan struk yang rapi.

baca juga:PKKMB Universitas Teknokrat Indonesia: Ryan Randy Suryono Ajak Mahasiswa Teknokrat Terapkan Project Based Learning


Dari Algoritma ke Kode: Mengubah ‘Resep’ Menjadi ‘Masakan’ Nyata

Setelah “resep” pseudocode di atas matang, barulah seorang programmer akan “memasaknya” menjadi kode program nyata. Sebagai gambaran, inilah wujud pseudocode kasir di atas jika ditulis dalam bahasa pemrograman Python:

Python

harga_barang = float(input("Masukkan harga barang: "))
jumlah_beli = int(input("Masukkan jumlah beli: "))

total_harga = harga_barang * jumlah_beli
diskon = 0

if total_harga > 100000:
    diskon = 0.10 * total_harga

harga_akhir = total_harga - diskon

print("--- STRUK PEMBAYARAN ---")
print(f"Total Harga  : Rp {total_harga}")
print(f"Diskon       : Rp {diskon}")
print(f"Harga Akhir  : Rp {harga_akhir}")
print("-------------------------")

Lihat kemiripannya? Pseudocode adalah jembatan yang sempurna antara ide manusia dan logika komputer.

penulis:Anis puspita sari

More From Author

artikel populer di Info Seminar

Bangun AI Game Dinamis: Panduan Esensial Behavior Tree Developer

Rahasia Anak Muda Sukses Ngelamar Kerja Back End Developer

Leave a Reply

Your email address will not be published. Required fields are marked *