Terus ke kandungan
IGCSE·Tuition
Sains Komputer · Pelajaran

Surih urutan dengan jadual keadaan

Membaca algoritma dalam kepala terasa mudah sehingga dua pemboleh ubah berubah serentak dan satu daripadanya terlepas.

Dalam halaman ini
  1. Bagaimana membina jadual surih?
  2. Contoh penyelesaian
  3. Kesilapan yang perlu diawasi
  4. Semak sendiri
  5. Ke mana selepas ini

Jadual surih merekod nilai setiap pemboleh ubah selepas setiap langkah, supaya anda boleh membuktikan apa yang dilakukan algoritma dan bukan meneka. Ia muncul apabila soalan memberi pseudokod dan meminta output atau nilai pada satu titik tertentu.

Ia dibina atas menentukan input dan output, dan menuju ke mereka bentuk pemilihan dengan kes sempadan, di mana surihan menunjukkan cabang mana yang berjalan.

Bagaimana membina jadual surih?

  1. Buat satu lajur bagi setiap pemboleh ubah, bagi sebarang syarat yang ingin ditunjukkan, dan bagi output.
  2. Tulis nilai permulaan dalam baris pertama, sebelum sebarang pusingan gelung.
  3. Ikuti algoritma satu baris pada satu masa. Apabila pemboleh ubah berubah, tulis nilai barunya dalam baris seterusnya. Salin nilai yang tidak berubah ke bawah.
  4. Rekod output pada saat OUTPUT dijalankan.
  5. Semak titik berhenti: ketahui mengapa gelung tamat.

Contoh penyelesaian

Surih algoritma ini dan berikan outputnya.

Total ← 0
Count ← 0
FOR N ← 1 TO 5
   IF N MOD 2 = 1 THEN
      Total ← Total + N
      Count ← Count + 1
   ENDIF
NEXT N
OUTPUT Total, Count

Langkah 1, lajur dan permulaan: N, N MOD 2, Total, Count. Mulakan dengan Total = 0 dan Count = 0.

Langkah 2, satu baris bagi setiap pusingan:

NN MOD 2TotalCount
mula00
1111
2011
3142
4042
5193

Langkah 3, output: gelung tamat selepas N = 5, jadi outputnya ialah 9, 3.

Semak: nombor ganjil dari 1 hingga 5 ialah 1, 3 dan 5. Jumlahnya 9 dan ada 3 nombor. Ini sepadan dengan jadual.

Kesilapan yang perlu diawasi

Satu kesilapan lazim ialah melangkau baris permulaan dan baris di mana tiada apa berubah.

Surihan yang salah: pelajar hanya menulis baris untuk N = 1, 3 dan 5, dan bermula dengan Total = 1.

Jadual kelihatan kemas, tetapi ia tidak lagi membuktikan bahawa nilai genap telah diuji dan dibiarkan.

Pembetulannya ialah memasukkan baris permulaan dan satu baris bagi setiap pusingan, walaupun nilai hanya disalin ke bawah. Jika algoritma ada kesalahan pada syarat IF, seperti N MOD 2 = 0 secara tersilap, baris yang hilang akan menyembunyikannya. Jadual penuh menunjukkan ujian mana yang gagal.

Semak sendiri

1. Surih ini dan berikan output.

X ← 3
Y ← 10
WHILE Y > X DO
   Y ← Y - X
   X ← X + 1
ENDWHILE
OUTPUT X, Y
Show answer

Mula X = 3, Y = 10. Ujian 10 > 3 benar: Y = 7, X = 4. Ujian 7 > 4 benar: Y = 3, X = 5. Ujian 3 > 5 palsu, jadi gelung berhenti. Output 5, 3.

2. Apakah outputnya?

S ← 0
FOR I ← 2 TO 8 STEP 2
   S ← S + I
NEXT I
OUTPUT S
Show answer

I mengambil nilai 2, 4, 6, 8. S ialah 2, kemudian 6, kemudian 12, kemudian 20. Output 20.

3. Dalam contoh di atas, tukar syarat kepada N MOD 2 = 0. Apakah outputnya?

Show answer

Kini N = 2 dan N = 4 dikira. Total = 2 + 4 = 6 dan Count = 2. Output 6, 2.

Ke mana selepas ini

Seterusnya, gunakan penyurihan pada pemilihan dengan kes sempadan. Berlatih pada algoritma asli yang kecil dalam pelatih surih pseudokod, yang menunjukkan setiap pemboleh ubah berubah dan cabang yang berjalan.

Surihan hanya sebaik ketelitian di belakangnya, dan guru boleh menyemak jadual anda baris demi baris dalam tuisyen Computer Science dalam talian satu dengan satu. Set latihan mengandungi beberapa surihan.

Soalan lazim

Apakah jadual surih (trace table)?

Jadual surih, juga dipanggil jadual keadaan, mempunyai satu lajur bagi setiap pemboleh ubah dan bagi output, serta satu baris bagi setiap langkah. Ia merekod nilai setiap pemboleh ubah semasa algoritma berjalan, supaya anda nampak dengan tepat bagaimana hasil terhasil.

Perlukah saya menulis satu baris bagi setiap pusingan gelung?

Ya, satu baris bagi setiap pusingan untuk gelung yang mengubah pemboleh ubah, dan satu baris bagi sebarang syarat yang perlu ditunjukkan. Mulakan dengan baris nilai awal. Meninggalkan baris ialah cara ralat bersembunyi.

Apakah fungsi MOD dalam syarat?

N MOD 2 memberi baki apabila N dibahagi 2. Baki 1 bermakna N ganjil, dan baki 0 bermakna N genap. Ujian seperti N MOD 2 = 1 ialah cara piawai untuk memilih nombor ganjil.

Dikemas kini:

Langkah seterusnya

Jika surihan anda menyimpang daripada output sebenar selepas beberapa baris, guru sesi satu dengan satu boleh melihat jadual anda dibina dan menunjukkan di mana keadaan mula menjadi salah.

Kelas percubaan berbayar satu jam pada kadar guru yang disahkan, bermula RM80. Yuran lain, jadual dan susunan seterusnya disahkan terus bersama guru selepas kelas percubaan.

Tuisyen diatur bersama ibu bapa atau penjaga. Hantar halaman ini kepada mereka melalui WhatsApp supaya mereka boleh bertanya bagi pihak anda.

Ibu bapa atau penjaga? Tanya di sini

9,000+ pelajar telah dibantu melalui perkhidmatan kami