A. PENGERTIAN TEKNIK DASAR ALGORITMA
Algoritma adalah langkah-langkah terstruktur untuk menyelesaikan suatu masalah dari awal hingga akhir.
Analogi sederhana:
Bayangkan kamu membeli bakso. Untuk mendapatkan bakso, ada langkah-langkah teratur:
- Datang ke gerobak bakso
- Memesan
- Membayar
- Menunggu
- Bakso datang
Langkah-langkah itu seperti algoritma, karena dilakukan berurutan dan jelas.
2. Teknik Dasar Algoritma Umum
a. Sequencing (Urutan)
Langkah dikerjakan satu per satu dari atas ke bawah.
Masak mie instan: rebus air → masukkan mie → bumbui → hidangkan.
b. Selection (Pemilihan / Percabangan)
Contoh:
Jika hujan → pakai payung
Jika tidak hujan → lanjut berjalan
c. Iteration (Perulangan)
Contoh:
Menyendok nasi sampai piring penuh.
d. Modularization (Pemisahan ke Fungsi)
Contoh:
Membuat kue: siapkan adonan → siapkan topping → proses oven.
Modularisasi membantu membuat algoritma lebih rapi dan mudah dipahami.
B. CONTOH PENYELESAIAN MASALAH DENGAN ALGORITMA
STUDI KASUS 1: Menghitung Luas Persegi Panjang
L = panjang × lebar
- Mulai
- Input nilai panjang
- Input nilai lebar
- Hitung luas = panjang × lebar
- Tampilkan hasil
- Selesai
Analogi:
Bayangkan kamu mencetak foto ukuran besar. Kamu harus tahu panjang dan lebar kertas dulu untuk tahu ukuran foto.
Contoh Kode C++
#include <iostream>using namespace std;int main() {int panjang, lebar, luas;cout << "Masukkan panjang: ";cin >> panjang;cout << "Masukkan lebar: ";cin >> lebar;luas = panjang * lebar;cout << "Luas persegi panjang adalah: " << luas;return 0;}
C. MENGGAMBARKAN ALGORITMA DENGAN FLOWCHART
Flowchart seperti peta jalan yang memberi tahu kamu harus lewat jalur mana untuk sampai tujuan.
D. ALGORITMA DALAM PSEUDOCODE
Pseudocode adalah bahasa perantara antara bahasa manusia dan bahasa pemrograman.
Tidak terikat format seperti bahasa C++, tapi mengikuti logika pemrograman.
Contoh Pseudocode Luas Persegi Panjang
STARTINPUT panjangINPUT lebarluas ← panjang * lebarOUTPUT luasEND
Pseudocode seperti catatan resep sederhana sebelum dibuat menjadi buku resep lengkap.
E. STUDI KASUS 2: Menentukan Bilangan Genap/Ganjil
Algoritma:
- Masukkan angka
- Jika angka % 2 == 0 → genap
- Jika tidak → ganjil
- Tampilkan hasil
Flowchart:
#include <iostream>using namespace std;int main() {int angka;cout << "Masukkan angka: ";cin >> angka;if (angka % 2 == 0)cout << "Angka ini adalah GENAP";elsecout << "Angka ini adalah GANJIL";return 0;}
F. STUDI KASUS 3: Menghitung Total Belanja
Algoritma:
- Input total belanja
- Jika total > 100000 → diskon 10%
- Hitung total bayar
- Tampilkan hasil
Pseudocode:
STARTINPUT totalBelanjaIF totalBelanja > 100000 THENdiskon ← totalBelanja * 0.10ELSEdiskon ← 0ENDIFtotalBayar ← totalBelanja - diskonOUTPUT totalBayarEND
G. KESIMPULAN
| Konsep | Penjelasan | Analogi |
|---|---|---|
| Algoritma | Langkah terurut untuk menyelesaikan masalah | Resep memasak |
| Flowchart | Diagram alur kerja | Peta perjalanan |
| Pseudocode | Format teks mirip kode | Catatan resep |
| Sequencing | Langkah urut | Antri di kasir |
| Selection | Percabangan | Jika hujan → payung |
| Iteration | Perulangan | Menyendok nasi berkali-kali |