Terus ke kandungan
IGCSE·Tuition
Sains Komputer · Pelajaran

Terangkan pengesahan input tanpa pintasan khusus bahasa

Anda tahu apa itu semakan julat, tetapi menulisnya sebagai gelung dalam jawapan peperiksaan ialah kemahiran yang berbeza.

Dalam halaman ini
  1. Bagaimanakah saya menukar peraturan kepada gelung?
  2. Contoh berlangkah
  3. Kesilapan yang perlu diawasi
  4. Semak sendiri
  5. Ke mana selepas ini

Pengesahan input (input validation) ialah gelung yang terus bertanya sehingga nilai memenuhi satu peraturan. Peraturan itu boleh berupa julat, panjang atau semakan kehadiran, dan syarat gelung menerangkan kes yang tidak sah.

Pelajaran ini tergolong dalam pseudokod untuk sukatan berkenaan. Ia berasaskan menjejak tugasan dan perbandingan, dan berkait dengan idea lebih luas dalam pengesahan, verifikasi dan pengujian.

Bagaimanakah saya menukar peraturan kepada gelung?

Nyatakan peraturan dalam perkataan, kemudian tulis syarat tidak sah, kerana gelung berulang selagi data salah.

SemakanPeraturanSyarat tidak sah
JulatUmur dari 12 hingga 18Age < 12 OR Age > 18
PanjangKod mempunyai tepat 6 aksaraLENGTH(Code) <> 6
KehadiranNama tidak kosongName = ""

Coraknya: baca sekali, kemudian ulang selagi tidak sah, bertanya semula di dalam gelung.

INPUT Age
WHILE Age < 12 OR Age > 18 DO
   OUTPUT "Enter an age from 12 to 18"
   INPUT Age
ENDWHILE

Contoh berlangkah

Jejak gelung di atas apabila pengguna menaip 25, kemudian 9, kemudian 14.

LangkahAgeSyarat (Age < 12 OR Age > 18)Tindakan
INPUT pertama2525 > 18, maka TRUEgesaan, INPUT semula
INPUT kedua99 < 12, maka TRUEgesaan, INPUT semula
INPUT ketiga14FALSE, FALSE, maka FALSEgelung tamat

Gesaan dikeluarkan dua kali dan Age berakhir 14. Semak: 14 tidak kurang daripada 12 dan tidak lebih daripada 18, jadi ia dibenarkan.

Menerangkan semakan dengan perkataan juga diterima dalam sesetengah soalan: “Ulang input selagi umur kurang daripada 12 atau lebih daripada 18.” Namakan peraturan dengan tepat dan elakkan merujuk kaedah terbina dalam.

Kesilapan yang perlu diawasi

Silap yang lazim ialah menggunakan AND di tempat yang memerlukan OR.

Syarat yang salah: WHILE Age < 12 AND Age > 18 DO

Tiada nombor yang kurang daripada 12 dan lebih daripada 18 serentak, jadi syarat ini sentiasa FALSE. Gelung tidak pernah berjalan, dan 25 diterima.

Pembetulannya ialah OR untuk kes tidak sah. Silap kedua ialah menggunakan syarat sah dalam WHILE: WHILE Age >= 12 AND Age <= 18 mengulang gesaan untuk nilai baik dan berhenti untuk nilai buruk. Jika anda lebih suka menulis peraturan yang sah, gunakan REPEAT ... UNTIL Age >= 12 AND Age <= 18.

Semak sendiri

1. Tulis syarat tidak sah bagi markah yang mesti dari 0 hingga 100.

Tunjukkan jawapan

Mark < 0 OR Mark > 100

2. Sebuah kod mesti mempunyai tepat 5 aksara. Pengguna menaip “AB12”. Adakah gelung berulang?

Tunjukkan jawapan

LENGTH(“AB12”) ialah 4, dan 4 <> 5 ialah TRUE. Ya, gelung berulang dan bertanya semula.

3. Adakah semakan julat pada umur menghalang pengguna menaip 15 sedangkan umur sebenar mereka 17?

Tunjukkan jawapan

Tidak. 15 berada dalam julat, jadi ia lulus. Pengesahan menyemak bahawa nilai itu munasabah, bukan bahawa ia benar.

Ke mana selepas ini

Gelung pengesahan ialah antara tempat paling lazim berlakunya kesilapan penamatan, jadi teruskan ke membaiki syarat penamat gelung. Latih melangkah kod dalam alat latihan jejak pseudokod terhad.

Seorang guru dalam tuisyen Computer Science dalam talian satu dengan satu kami boleh memberi senario pengesahan baharu dan menyemak setiap syarat yang anda tulis.

Soalan lazim

Adakah pengesahan (validation) membuktikan data itu betul?

Tidak. Pengesahan menyemak bahawa data munasabah dan dibenarkan, contohnya umur antara 12 dan 18. Ia tidak tahu sama ada umur itu benar. Verifikasi (verification), seperti memasukkan nilai dua kali, ialah idea berasingan yang menyemak ralat kemasukan.

Bolehkah saya menggunakan fungsi terbina dalam seperti isdigit dalam jawapan?

Jawapan pseudokod patut menerangkan semakan menggunakan binaan piawai: perbandingan, gelung dan fungsi yang disenaraikan panduan pseudokod. Kaedah khusus bahasa mungkin tidak dikenali. Terangkan semakan itu dalam langkah, atau semak fungsi yang dimuatkan dalam panduan Cambridge.

Perlukah gesaan diulang di dalam gelung?

Ya. Jika input pertama tidak sah, gelung perlu bertanya semula, jadi baris INPUT mesti muncul di dalam gelung dan juga sebelumnya. Jika tidak, nilai buruk yang sama diuji selama-lamanya.

Dikemas kini:

Langkah seterusnya

Jika anda boleh menamakan setiap semakan pengesahan tetapi tersangkut apabila perlu menulis gelungnya, guru satu dengan satu boleh membina jawapan itu bersama anda satu syarat demi satu.

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