Terus ke kandungan
IGCSE·Tuition
Sains Komputer · Bantuan belajar

Atur cara saya berjalan tetapi gagal pada kes sempadan

Atur cara anda memberi jawapan betul untuk contoh yang dicuba, tetapi salah untuk nilai yang tepat di hujung.

Dalam halaman ini
  1. Bagaimana rupa pepijat sempadan?
  2. Bagaimana membetulkannya?
  3. Bagaimana memilih data ujian sempadan?
  4. Contoh kedua: “lebih daripada” dan “sekurang-kurangnya”
  5. Perkataan yang menandakan hujung termasuk atau tidak
  6. Senarai semak sebelum menghantar syarat
  7. Seterusnya ke mana
  8. Bila semakan sendiri tidak mencukupi

Atur cara gagal pada sempadan apabila syaratnya melayan nilai di hujung secara berbeza daripada apa yang dinyatakan masalah. Puncanya biasanya < sedangkan <= diperlukan, atau > sedangkan >= diperlukan. Penyelesaiannya ialah memilih data ujian sempadan sebelum anda menulis syarat.

Di bawah ada satu contoh berlangkah dengan jadual penjejakan, kemudian satu contoh kedua yang pendek. Notasi ialah pseudokod ringkas. Laluan anda mungkin menggunakan gaya tertentu, jadi sahkannya di laman Cambridge.

Bagaimana rupa pepijat sempadan?

Sistem sekolah patut menerima markah ujian dari 0 hingga 100 termasuk kedua-dua hujung. Berikut percubaan pertama.

INPUT Mark
IF Mark > 0 AND Mark < 100 THEN
    OUTPUT "Accepted"
ELSE
    OUTPUT "Rejected"
ENDIF

Cuba beberapa nilai. Seorang pelajar menguji 50 dan 75, melihat “Accepted” untuk kedua-duanya dan meneruskan. Kini jejak set yang lebih lengkap.

MarkMark > 0Mark < 100OutputDijangka
50BENARBENARAcceptedAccepted
0PALSUBENARRejectedAccepted
1BENARBENARAcceptedAccepted
99BENARBENARAcceptedAccepted
100BENARPALSURejectedAccepted
−1PALSUBENARRejectedRejected
101BENARPALSURejectedRejected

Dua baris gagal: 0 dan 100. Kedua-duanya markah sebenar yang ditolak dengan salah oleh atur cara. Ujian biasa tidak pernah sampai ke situ.

Bagaimana membetulkannya?

Masukkan had ke dalam syarat.

IF Mark >= 0 AND Mark <= 100 THEN

Jejak semula baris yang gagal. Mark = 0 memberi BENAR dan BENAR, jadi Accepted.

Mark = 100 memberi BENAR dan BENAR, jadi Accepted. Mark = −1 memberi PALSU, Rejected.

Mark = 101 memberi PALSU pada ujian kedua, Rejected. Kesemua tujuh baris kini sepadan.

Bagaimana memilih data ujian sempadan?

Bagi julat dengan had bawah L dan had atas U, kedua-duanya termasuk:

TujuanNilai (L = 0, U = 100)
Pada had bawah0
Tepat di dalam had bawah1
Tepat di luar had bawah−1
Pada had atas100
Tepat di dalam had atas99
Tepat di luar had atas101

Tulis keputusan yang dijangka sebelum menjalankan apa-apa. Jika anda menentukan keputusan yang dijangka selepas melihat output, atur cara itu seolah-olah menanda kerjanya sendiri.

Contoh kedua: “lebih daripada” dan “sekurang-kurangnya”

Sebuah kedai memberi penghantaran percuma apabila jumlah pesanan sekurang-kurangnya RM50. Kodnya:

IF Total > 50 THEN
    Delivery ← 0
ELSE
    Delivery ← 5
ENDIF
TotalKod memberiBetul
49.9055
50.0050
50.1000

Hanya nilai sempadan 50.00 mendedahkan kesalahan itu. Perkataan “sekurang-kurangnya” bermaksud 50 termasuk, jadi syaratnya patut Total >= 50.

Perkataan yang menandakan hujung termasuk atau tidak

PerkataanSyarat
sekurang-kurangnya 50, 50 atau lebih, dari 50Total >= 50
lebih daripada 50, melebihi 50Total > 50
paling banyak 50, hingga dan termasuk 50Total <= 50
kurang daripada 50, di bawah 50Total < 50

Garis bawahi perkataan dalam soalan dan pilih simbol daripada jadual ini, bukan daripada kebiasaan.

Senarai semak sebelum menghantar syarat

  1. Bulatkan had dalam soalan dan tentukan sama ada setiap satu termasuk.
  2. Tulis nilai sempadan anda dan keputusan yang dijangka bagi setiap satu.
  3. Jejak dua atau tiga nilai hujung melalui syarat dengan tangan.
  4. Sertakan satu nilai di luar setiap had, dan satu input tidak normal.
  5. Baca semula: adakah simbol sepadan dengan perkataan?

Gunakan pelatih penjejakan pseudokod terhad untuk melangkah melalui algoritma asli, dan kotak pasir penaakulan Python selamat untuk melihat ujian yang gagal dengan gesaan penjelasan, jika laluan anda membenarkan.

Seterusnya ke mana

Topik penuh ada dalam pengesahan, penentusahan dan pengujian. Jika gelung juga menyusahkan anda, baca gelung saya tidak berhenti atau terlepas item terakhir. Set latihan asli mempunyai soalan data ujian, dan panduan pembelajaran menunjukkan di mana ia sesuai.

Bila semakan sendiri tidak mencukupi

Jika anda menjejak nilai hujung dan masih menulis simbol yang salah ketika tertekan masa, jurangnya selalunya pada cara anda membaca perkataan. Dalam tuisyen Computer Science dalam talian satu dengan satu, guru boleh memberi soalan pendek yang pelbagai dan mendengar cara anda membuat keputusan. Langkah pertama ialah kelas percubaan berbayar selama satu jam, dari RM80 pada kadar yang disahkan guru yang ditugaskan sebelum kelas.

Soalan lazim

Apakah kes sempadan?

Ia nilai yang tepat di hujung apa yang diterima atau dilayan berbeza oleh atur cara. Jika julat ialah 0 hingga 100 termasuk kedua-dua hujung, nilai sempadan ialah 0 dan 100, dan nilai tepat di luar ialah -1 dan 101. Syarat paling kerap tersilap pada nilai ini, kerana < dan <= hanya berbeza di situ.

Data ujian apa yang patut saya pilih?

Pilih tiga jenis. Data normal sah dan lazim. Data sempadan berada di hujung, dengan nilai tepat di luarnya. Data tidak normal patut ditolak, seperti teks di tempat nombor dijangka. Bagi setiap item, tulis output yang anda jangka sebelum menjalankan atur cara.

Apakah beza antara < dan <=?

Simbol < mengecualikan nilai itu dan <= memasukkannya. Syarat Mark < 100 menolak tepat 100, manakala Mark <= 100 menerimanya. Sentiasa tanya sama ada nilai di hujung patut dikira, kemudian pilih simbol yang sepadan dengan soalan.

Adakah idea yang sama terpakai pada soalan validation dalam peperiksaan?

Ya. Soalan tentang semakan julat dan data ujian sering bergantung pada sama ada had termasuk atau tidak. Baca perkataan dengan teliti, seperti 'dari 0 hingga 100' atau 'lebih daripada 50', dan pilih nilai ujian pada dan di sekitar setiap had.

Sumber rujukan

  1. Cambridge IGCSE Computer Science 0478 syllabus page

Dikemas kini:

Langkah seterusnya

Jika kod anda lulus ujian sendiri tetapi masih hilang markah di hujung, guru satu dengan satu boleh membantu anda membina tabiat memilih data ujian sebelum menulis syarat.

Kelas percubaan berbayar satu jam pada kadar guru yang disahkan, bermula RM80.

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

Ibu bapa: tanya di sini

  • 9,000+ pelajar telah dibantu melalui perkhidmatan kami
  • 9+ tahun membantu pelajar IGCSE