Untuk menerangkan algoritma tanpa bahasa, huraikan setiap langkah dalam perkataan biasa yang menamakan data dan keputusan, kemudian tunjukkan langkah yang sama dalam pseudokod. Penerangan itu mesti masih betul jika seseorang kemudian melaksanakannya dalam Python, Java atau hamparan.
Pelajaran ini menyatukan penguraian, spesifikasi, surihan dan ujian sempadan menjadi satu tabiat.
Bagaimana menerangkan dengan baik?
- Nyatakan tujuan algoritma dalam satu ayat: input dan output.
- Senaraikan langkah mengikut susunan, setiap satu bermula dengan kata kerja dan menamakan pemboleh ubah.
- Nyatakan setiap keputusan dengan syaratnya, contohnya “jika nombor baharu lebih kecil daripada Smallest”.
- Nyatakan bagaimana ia berhenti.
- Sokong dengan surihan pada data kecil.
Elakkan frasa yang bergantung pada satu bahasa, seperti “panggil fungsi min”. Ia menyembunyikan logik yang anda diminta tunjukkan.
Contoh penyelesaian
Cari yang terkecil daripada empat nombor yang dimasukkan satu demi satu.
Langkah biasa:
- Masukkan nombor pertama dan simpan sebagai Smallest.
- Ulang tiga kali lagi: masukkan nombor; jika lebih kecil daripada Smallest, simpan sebagai Smallest.
- Keluarkan Smallest.
Pseudokod:
INPUT Number
Smallest ← Number
FOR Count ← 2 TO 4
INPUT Number
IF Number < Smallest THEN
Smallest ← Number
ENDIF
NEXT Count
OUTPUT Smallest
Logik yang sama dalam Python:
smallest = int(input())
for count in range(2, 5):
number = int(input())
if number < smallest:
smallest = number
print(smallest)
Surih dengan 14, 9, 21, 9:
| Count | Number | Number < Smallest | Smallest |
|---|---|---|---|
| mula | 14 | 14 | |
| 2 | 9 | benar | 9 |
| 3 | 21 | palsu | 9 |
| 4 | 9 | palsu | 9 |
Outputnya 9. Nombor 9 yang terakhir tidak lebih kecil daripada 9, jadi Smallest kekal sama. Nombor terkecil dalam senarai ialah 9, jadi jawapannya betul.
Kesilapan yang perlu diawasi
Satu kesilapan lazim ialah memulakan Smallest dengan nombor tetap.
Permulaan yang salah:
Smallest ← 0, dengan nombor 14, 9, 21, 9.Tiada nombor lebih kecil daripada 0, jadi outputnya 0, nilai yang tidak pernah dimasukkan.
Pembetulannya ialah bermula daripada nilai sebenar yang pertama, seperti di atas. Penerangan langkah biasa menunjukkan ini dengan jelas: “simpan nombor pertama sebagai Smallest”. Penerangan yang melangkau langkah ini tidak memberi cara untuk melihat kesalahan itu.
Semak sendiri
1. Terangkan dalam langkah biasa algoritma yang mengira berapa banyak daripada lima nombor ialah negatif.
Show answer
Tetapkan Count kepada 0. Ulang lima kali: masukkan nombor; jika kurang daripada 0, tambah 1 kepada Count. Selepas lima nombor, keluarkan Count.
2. Surih yang berikut untuk input −3, 4, 0, −1, 7 dan nyatakan apa yang dilakukan algoritma.
Count ← 0
FOR I ← 1 TO 5
INPUT N
IF N < 0 THEN
Count ← Count + 1
ENDIF
NEXT I
OUTPUT Count
Show answer
Count ialah 0, kemudian 1 selepas −3, kekal 1 selepas 4 dan 0, kemudian 2 selepas −1, kekal 2 selepas 7. Output 2. Ia mengira nombor negatif.
3. Tulis semula “guna fungsi len untuk mencari berapa banyak item” sebagai langkah yang tidak bergantung pada bahasa.
Show answer
“Kira item dengan memulakan pembilang pada 0 dan menambah 1 bagi setiap item.” Ini menghuraikan logik tanpa menamakan fungsi terbina dalam.
Ke mana selepas ini
Dengan tabiat reka bentuk yang mantap, teruskan ke pengulangan dan tatasusunan, kemudian cuba set latihan campuran. Kotak pasir Python selamat membolehkan anda menjalankan versi pendek contoh di atas dan membandingkannya dengan surihan anda.
Guru yang mendengar penerangan anda boleh mengesan langkah yang hilang dengan cepat, dan itu sebahagian daripada tuisyen Computer Science dalam talian satu dengan satu kami.