Kamu minta adikmu bikinin teh manis. Lima menit kemudian dia datang bawa gelas berisi air dingin dan teh celup yang masih kering. Dia gak salah. Kamu memang gak bilang airnya harus direbus dulu.
Komputer jauh lebih polos dari adikmu. Dia mengerjakan persis yang kamu tulis, satu baris demi satu baris, dari atas ke bawah. Dia gak menebak maksudmu dan gak menambah langkah yang kamu lupa. Jadi tugas pertamamu di sini cuma satu: menulis langkah yang lengkap dan urut.
Resep juga program
Urutan langkah yang jelas untuk menyelesaikan satu tugas disebut algoritma. Resep teh itu algoritma. Petunjuk jalan yang kamu kirim ke abang ojek ("lurus sampai masjid, belok kiri, rumah ketiga yang pagarnya hijau") juga algoritma.
Kalau langkahnya ditulis pakai kata-kata yang mirip kode, namanya pseudocode. Pseudocode di sini pakai kata Indonesia, dan bisa langsung dijalankan:
TULIS "Rebus air sampai mendidih"
TULIS "Tuang air panas ke gelas berisi teh celup"
TULIS "Tunggu tiga menit, lalu angkat teh celupnya"
TULIS "Tambah gula, aduk, lalu sajikan"
Hasilnya:
Rebus air sampai mendidih
Tuang air panas ke gelas berisi teh celup
Tunggu tiga menit, lalu angkat teh celupnya
Tambah gula, aduk, lalu sajikan
TULIS menampilkan apa pun yang ada di antara tanda kutip, lalu pindah ke baris baru. Satu baris kode, satu langkah. Komputer mulai dari baris paling atas dan berhenti setelah baris terakhir.
Urutan menentukan hasil
Sebelum lanjut, coba tebak: kalau baris "Rebus air" dipindah ke paling bawah, apa yang tercetak paling atas?
TULIS "Tuang air panas ke gelas berisi teh celup"
TULIS "Tunggu tiga menit, lalu angkat teh celupnya"
TULIS "Tambah gula, aduk, lalu sajikan"
TULIS "Rebus air sampai mendidih"
Tuang air panas ke gelas berisi teh celup
Tunggu tiga menit, lalu angkat teh celupnya
Tambah gula, aduk, lalu sajikan
Rebus air sampai mendidih
"Tuang air panas" muncul duluan, padahal airnya belum direbus. Komputer gak protes, karena tiap barisnya benar. Yang salah urutannya, dan cuma kamu yang bisa melihat itu. Sama kayak petunjuk ojek tadi: "belok kiri, lalu lurus sampai masjid" membawa abangnya ke tempat yang beda dari "lurus sampai masjid, lalu belok kiri".
Komputer gak bisa menebak
Adikmu masih bisa nanya "gulanya berapa sendok?". Komputer gak bisa nanya. Langkah yang buat manusia sudah jelas, buat komputer harus ditulis lengkap.
Teks di dalam kutip juga dibaca apa adanya. TULIS "Rebus air" mencetak Rebus air, persis dengan huruf besar-kecil dan spasinya. Salah ketik di dalam kutip ikut tercetak.
Kata perintahnya sendiri lebih longgar. TULIS, tulis, dan Tulis dibaca sama, dan PRINT dari bahasa Inggris juga boleh. Di sini kita pakai TULIS huruf besar, biar perintahnya gampang dibedakan dari teksnya.
Satu lagi: baris yang diawali // itu catatan buat manusia. Komputer melewatinya.
// Resep teh manis
TULIS "Rebus air sampai mendidih"
Rebus air sampai mendidih
⚠️ Kenapa programnya berhenti di baris pertama?
Kalau komputer gak paham satu baris, dia berhenti dan bilang baris mana yang bikin bingung, lalu cara membetulkannya. Di program pertama, biasanya salah satu dari ini:
- Tanda kutipnya lupa.
TULIS Rebus airberhenti dengan "Baris 1: teksRebus airbelum diberi tanda kutip." Tanpa kutip, komputer mengiraRebusdanairitu nama sesuatu, bukan teks. Bungkus teksnya dengan kutip:TULIS "Rebus air". - Kutipnya cuma satu.
TULIS "Rebus airberhenti dengan "Baris 1: teks yang dibuka dengan"belum ditutup." Tambahkan kutip penutup di ujung teksnya. - Perintahnya salah ketik.
TULSI "Rebus air"berhenti dengan "Baris 1:TULSIgak dikenal." lalu "Maksudmu TULIS?". Komputer cuma kenal kata yang ejaannya pas. - Ada titik di akhir baris.
TULIS "Rebus air".berhenti dengan "Baris 1: titik setelah"Rebus air"gak dikenal." Kalau mau ada titik, taruh di dalam kutip:TULIS "Rebus air.".
Angka di depan "Baris" itu nomor barisnya. Mulai cari dari situ.
TL;DR: Algoritma itu urutan langkah yang jelas untuk menyelesaikan satu tugas, kayak resep teh atau petunjuk jalan buat ojek. Pseudocode menulis langkah itu dengan kata yang mirip kode. Komputer menjalankannya dari baris paling atas ke bawah, satu baris satu langkah, dan gak pernah menebak. TULIS "teks" menampilkan teks di antara kutip apa adanya. Tukar urutan barisnya, hasilnya ikut berubah. Baris yang diawali // cuma catatan.