Planning & pseudocode · Perencanaan & pseudocode
Plan before you code
- An algorithm is a clear list of steps that solves a problem.
- Good programmers plan the steps before they type code.
- A plan helps you spot mistakes early and explain your idea.
Rencanakan sebelum coding
- Algoritma adalah daftar langkah-langkah yang jelas yang memecahkan suatu masalah.
- Programmer yang baik merencanakan langkah-langkah sebelum mengetik kode.
- Rencana membantu Anda menemukan kesalahan lebih awal dan menjelaskan ide Anda.
Decomposition
- Decomposition means breaking a big problem into smaller parts.
- Solve each small part on its own.
- Small parts are easier to write, test, and fix.
Dekomposisi
- Dekomposisi berarti memecah masalah besar menjadi bagian-bagian kecil.
- Selesaikan setiap bagian kecil secara mandiri.
- Bagian kecil lebih mudah ditulis, diuji, dan diperbaiki.
Abstraction
- Abstraction means keeping only the details that matter.
- You hide the parts you do not need right now.
- A map is an abstraction: it shows roads, not every tree.
Abstraksi
- Abstraksi berarti hanya mempertahankan detail yang penting.
- Anda menyembunyikan bagian yang tidak Anda butuhkan saat ini.
- Peta adalah abstraksi: menunjukkan jalan, bukan setiap pohon.
Structured English
- Structured English writes the steps as plain numbered sentences.
- It is not real code, so anyone can read it.
Bahasa Inggris Terstruktur
- Bahasa Inggris Terstruktur menulis langkah-langkah sebagai kalimat berangka biasa.
- Ini bukan kode sungguhan, sehingga siapa pun dapat membacanya.
1. Read the number.
2. If it can be divided by 2 with no remainder, it is even.
3. Otherwise it is odd.
4. Output the answer.
Flowcharts
- A flowchart draws the steps as boxes joined by arrows.
- A rectangle is a step; a diamond is a decision (yes / no).
Diagram Alir
- Diagram alir menggambar langkah-langkah sebagai kotak yang terhubung dengan panah.
- Persegi panjang adalah langkah; berlian adalah keputusan (ya / tidak).
( start )
|
[ read n ]
|
< n > 0 ? > --no--> [ output "not positive" ]
| yes
[ output "positive" ]
|
( end )
Three building blocks
- Sequence: steps run one after another.
- Selection:
if/elif/elsechooses a path. - Iteration:
for/whilerepeats steps.
Tiga blok bangunan
- Urutan: langkah-langkah berjalan satu setelah yang lain.
- Pemilihan:
if/elif/elsememilih sebuah jalur. - Iterasi:
for/whilemengulang langkah-langkah.
In Cambridge pseudocode
- The same plan in pseudocode, then in Python below.
Dalam pseudocode Cambridge
- Rencana yang sama dalam pseudocode, lalu di bawah ini dalam Python.
Total ← 0
FOR I ← 0 TO LENGTH(Numbers) - 1
Total ← Total + Numbers[I]
NEXT I
Average ← Total / LENGTH(Numbers)
OUTPUT Average
numbers = [4, 8, 6]
total = 0
for n in numbers:
total = total + n
average = total / len(numbers)
print(average)
Common mistakes
- Pseudocode is a plan in plain words — it does not have to run.
- Break the problem into small steps before you write any code.
- Plan the input → process → output.
Kesalahan umum
- Pseudocode adalah rencana dengan kata-kata biasa — ia tidak perlu bisa dijalankan.
- Pecahkan masalah menjadi langkah-langkah kecil sebelum menulis kode apa pun.
- Rencanakan input → proses → output.
Now you try
- Each task gives you a plan in words. Turn it into Python.
- Press Check answer to test your code.
Sekarang Anda coba
- Setiap tugas memberikan Anda rencana dalam kata-kata. Ubahlah menjadi Python.
- Tekan Periksa jawaban untuk menguji kode Anda.
An algorithm is ordered steps · Algoritma adalah langkah-langkah tertata
Pseudocode is just the steps in order, before you write real code. · Pseudocode hanyalah langkah-langkah secara berurutan, sebelum menulis kode nyata.
Follow this plan: read a whole number; if it divides by 2 with no remainder print Even, otherwise print Odd. For input 4, print Even. · Ikuti rencana ini: baca bilangan bulat; jika habis dibagi 2 tanpa sisa cetak Even, kalau tidak cetak Odd. Untuk input 4, cetak Even.
Click Run to see the output here. · Klik Jalankan untuk melihat output di sini.
Follow this plan: read a number N; add up every whole number from 1 to N; print the total. For input 5, print 15. · Ikuti rencana ini: baca angka N; jumlahkan setiap bilangan bulat dari 1 hingga N; cetak totalnya. Untuk input 5, cetak 15.
Click Run to see the output here. · Klik Jalankan untuk melihat output di sini.
Decompose this into a function. Write count_vowels(word) that returns how many letters of word are vowels (a e i o u, lowercase). · Uraikan ini menjadi fungsi. Tulis count_vowels(word) yang mengembalikan berapa banyak huruf dari word adalah vokal (huruf kecil a e i o u).
Click Run to see the output here. · Klik Jalankan untuk melihat output di sini.
Follow this plan for every number from 1 to 15: if it divides by both 3 and 5, print FizzBuzz; else if it divides by 3, print Fizz; else if it divides by 5, print Buzz; otherwise print the number. · Ikuti rencana ini untuk setiap angka dari 1 hingga 15: jika habis dibagi keduanya 3 dan 5, cetak FizzBuzz; jika tidak jika habis dibagi 3, cetak Fizz; jika tidak jika habis dibagi 5, cetak Buzz; kalau tidak cetak angkanya.
Click Run to see the output here. · Klik Jalankan untuk melihat output di sini.