Kalau... Maka — Pseudocode

Ini yang bakal kamu bikin di akhir pelajaran ini. Bu Sri mengantar pesanan lewat ojek, dan ongkirnya gratis kalau belanjanya di atas Rp 50.000. Programmu…

Ini yang bakal kamu bikin di akhir pelajaran ini. Bu Sri mengantar pesanan lewat ojek, dan ongkirnya gratis kalau belanjanya di atas Rp 50.000. Programmu membaca satu pesanan, lalu menjawab. Untuk pesanan 65000 dia menulis baris pertama di bawah ini, untuk pesanan 50000 baris kedua:

Gratis ongkir
Ongkir 10000

Program yang sama, dua jawaban beda. Sampai pelajaran tadi, semua barismu selalu jalan. Mulai sekarang programmu bisa memilih baris mana yang jalan.

JIKA ... MAKA ... AKHIR JIKA

belanja ← 65000
JIKA belanja > 50000 MAKA
    TULIS "Gratis ongkir"
AKHIR JIKA
TULIS "Terima kasih"
Gratis ongkir
Terima kasih

Ganti baris pertamanya jadi belanja ← 30000, dan yang tercetak cuma Terima kasih:

belanja ← 30000
JIKA belanja > 50000 MAKA
    TULIS "Gratis ongkir"
AKHIR JIKA
TULIS "Terima kasih"
Terima kasih

SELAIN ITU: kalau kondisinya salah

belanja ← 30000
JIKA belanja > 50000 MAKA
    TULIS "Gratis ongkir"
SELAIN ITU
    TULIS "Ongkir 10000"
AKHIR JIKA
Ongkir 10000

Baris di bawah SELAIN ITU jalan kalau kondisinya salah. Dari dua cabang, selalu tepat satu yang jalan: gak pernah dua-duanya, gak pernah gak ada sama sekali. Di JavaScript dan Python nanti, JIKA jadi if dan SELAIN ITU jadi else.

Membandingkan dua nilai

Kondisi itu perbandingan, dan hasilnya BENAR atau SALAH:

TULIS 65000 > 50000
TULIS 50000 > 50000
TULIS 50000 >= 50000
BENAR
SALAH
BENAR
Tanda Artinya
> lebih dari
< kurang dari
>= lebih dari atau sama dengan
<= kurang dari atau sama dengan
= sama dengan
≠ gak sama dengan (boleh juga != atau <>)

"Di atas 50.000" artinya > 50000, jadi belanja tepat 50000 masih bayar ongkir. "Minimal 50.000" artinya >= 50000. Beda satu tanda = bisa memindahkan satu pembeli dari bayar ongkir ke gratis, jadi baca syaratnya pelan-pelan.

= membandingkan, ← mengisi

Teks juga bisa dibandingkan:

kode ← "HEMAT"
JIKA kode = "HEMAT" MAKA
    TULIS "Diskon 5000"
AKHIR JIKA
Diskon 5000

kode ← "HEMAT" mengisi kode. kode = "HEMAT" di dalam JIKA bertanya: isinya HEMAT bukan? Sebelum lanjut, coba tebak: kalau pembelinya mengetik hemat huruf kecil, diskonnya tetap berlaku gak?

kode ← "hemat"
JIKA kode = "HEMAT" MAKA
    TULIS "Diskon 5000"
SELAIN ITU
    TULIS "Kode gak dikenal"
AKHIR JIKA
Kode gak dikenal

Gak berlaku. Dua teks baru dianggap sama kalau tiap hurufnya sama, termasuk besar-kecilnya. Di JavaScript dan Python nanti, membandingkan pakai == (JavaScript lebih suka ===), karena = di sana selalu mengisi.

⚠️ Kenapa JIKA-nya gak mau jalan?

Satu lagi yang gak bikin error: >= padahal maksudnya >. Programnya jalan mulus, cuma pembeli yang belanja tepat 50000 ikut gratis ongkir. Coba programmu dengan angka yang pas di batasnya.

TL;DR: JIKA kondisi MAKA ... AKHIR JIKA menjalankan isinya cuma kalau kondisinya BENAR. Tambah SELAIN ITU untuk isi yang jalan kalau kondisinya SALAH, dan dari dua cabang selalu tepat satu yang jalan. Kondisi membandingkan dengan >, <, >=, <=, =, atau ≠. "Di atas 50.000" itu > 50000, "minimal 50.000" itu >= 50000. Di dalam kondisi, = membandingkan, dan ← di sana error. Teks dibandingkan huruf per huruf, besar-kecilnya ikut.

Yang akan kamu pelajari