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)
- Dimulai dengan simbol Oval bertuliskan “Mulai”.
- Anak panah menunjuk ke simbol Jajar Genjang bertuliskan “Input Panjang, Lebar”.
- Anak panah menunjuk ke simbol Persegi Panjang bertuliskan “Proses: Luas = Panjang * Lebar”.
- Anak panah menunjuk ke simbol Jajar Genjang bertuliskan “Output Luas”.
- 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 nilaii
belum melewati 10, lakukan semua perintah di dalamnya. Setiap selesai satu putaran, tambahkan nilaii
dengan 1.” - Hasilnya, komputer akan menjalankan perintah
TULISKAN i
saati=1
, lalui=2
,i=3
, dan seterusnya hinggai=10
. Jauh lebih efisien daripada menulis 10 baris perintahTULISKAN
.
- Perintah
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, nilaidiskon
tetap 0. - Baris 10: Bagian Proses akhir, menghitung harga final.
- Baris 11-15: Bagian Output, menampilkan struk yang rapi.
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