Struktur Dasar Algoritma dan Notasi Algoritma
Setelah memahami apa itu algoritma dan mengapa ia sangat penting, terutama dalam konteks pelestarian alam dan budaya, kini saatnya kita belajar bagaimana "merancang" algoritma itu sendiri. Sama seperti arsitek yang membuat denah bangunan sebelum membangunnya, seorang programmer perlu merancang struktur algoritmanya sebelum menulis kode program. Bab ini akan membahas struktur dasar yang menjadi fondasi setiap algoritma dan berbagai cara untuk menuliskannya agar mudah dipahami, baik oleh manusia maupun komputer.
2.1. Struktur Algoritma Dasar
Setiap algoritma, tidak peduli seberapa kompleksnya, dibangun dari tiga struktur dasar utama. Ketiga struktur ini bagaikan "balok-balok bangunan" yang dapat kita susun untuk menyelesaikan berbagai masalah.
2.1.1. Struktur Sekuensial (Urutan)
Ini adalah struktur paling sederhana, di mana instruksi-instruksi dieksekusi secara berurutan, satu demi satu, dari awal hingga akhir. Tidak ada lompatan atau pengulangan; setiap langkah dijalankan tepat sekali.
Analogi Konservasi/Budaya:
Bayangkan langkah-langkah untuk mengumpulkan data spesies langka di lapangan.
Siapkan peralatan pengamatan.
Pergi ke lokasi pengamatan.
Cari jejak atau tanda keberadaan spesies.
Catat temuan (jumlah, lokasi, kondisi).
Kembali ke basecamp.
Ini adalah urutan langkah yang harus dilakukan secara sekuensial.
Contoh Umum: Resep kopi yang kita bahas di Bab 1 adalah contoh klasik dari struktur sekuensial. Setiap langkah harus diikuti berurutan untuk mendapatkan hasil akhir.
2.2. Notasi Algoritma
Setelah memahami struktur dasarnya, bagaimana kita menuliskannya agar orang lain (dan kita sendiri di kemudian hari) dapat memahami algoritma yang telah kita rancang? Ada beberapa cara atau notasi yang umum digunakan:
2.2.1. Pseudocode
Pseudocode (dibaca: "sudo-kode") adalah cara menulis algoritma yang mirip dengan bahasa pemrograman tetapi tidak terikat pada aturan sintaksis (tata bahasa) yang ketat dari bahasa pemrograman tertentu. Kata "pseudo" berarti "semu" atau "mirip", jadi pseudocode adalah "kode semu". Tujuannya adalah untuk menggambarkan logika algoritma dengan jelas dan ringkas, sehingga mudah dibaca oleh manusia.
Kelebihan:
Mudah ditulis dan dipahami.
Tidak terikat pada bahasa pemrograman spesifik.
Fokus pada logika, bukan detail sintaksis.
Contoh (untuk Analogi Konservasi): Prosedur Penanaman Bibit Mangrove
Dalam contoh ini, kita bisa melihat kata kunci seperti UNTUK...LAKUKAN (perulangan) dan JIKA...MAKA...LAINNYA (pemilihan), yang mirip dengan perintah dalam bahasa pemrograman, namun lebih fleksibel.
2.2.2. Flowchart (Diagram Alir)
Flowchart adalah representasi visual (gambar) dari sebuah algoritma. Ia menggunakan simbol-simbol standar untuk merepresentasikan berbagai jenis langkah dan garis penghubung untuk menunjukkan alur eksekusi algoritma. Flowchart sangat baik untuk menggambarkan alur logika yang kompleks secara intuitif.
Kelebihan:
Visual dan mudah dipahami alurnya.
Baik untuk melacak alur program dan keputusan.
Baku dan standar (ada simbol-simbol khusus).
Simbol-simbol Dasar Flowchart:
Contoh Flowchart (untuk Analogi Budaya): Proses Digitalisasi Manuskrip Kuno Sederhana
Flowchart di atas secara visual menunjukkan langkah-langkah, keputusan (apakah manuskrip rusak), dan perulangan (proses terus berlanjut jika masih ada manuskrip lain).