Quiz cu scor în Scratch
Construiești azi un program care îi pune întrebări colegului tău, îi verifică răspunsurile și îi dă nota la final. La finalul laboratorului vei avea un quiz Scratch cu cel puțin 5 întrebări, scor care se calculează singur și un mesaj de final care depinde de rezultat — un produs pe care îl poți reumple oricând cu alte întrebări, la orice materie.
Ce îți trebuie
- scratch.mit.edu — cont opțional, dar util pentru salvare.
- 5 întrebări cu răspuns scurt, pregătite dinainte (o idee: recapitulare la altă materie — istorie, geografie, biologie).
- Timp: 45 de minute — 10 pentru liste, 20 pentru motorul quiz-ului, 15 pentru scor, mesaje și testare.
Pasul 1: două liste, nu zece blocuri
Ai putea scrie zece blocuri „întreabă..." unul sub altul. Ar merge, dar la a doua modificare te-ai pierde în ele. Soluția curată: datele stau în liste, programul rămâne scurt.
- Proiect nou. Personajul rămâne pisica — azi ea e profesorul.
- În categoria portocalie Variabile, apasă Creează o listă și numește-o
intrebari. - Creează a doua listă:
raspunsuri. - Listele apar pe scenă. Apasă
+din colțul fiecăreia și introdu cele 5 întrebări înintrebariși răspunsurile corecte înraspunsuri— în aceeași ordine: răspunsul de pe poziția 3 e pentru întrebarea de pe poziția 3. - Tot din Variabile, creează variabilele
scorșinumar(numărul întrebării curente).
Un sfat care te scutește de nervi la testare: alege răspunsuri dintr-un singur cuvânt, scrise cu litere mici, fără diacritice (bucuresti, nu Bucureşti). Compararea e literă cu literă.
Pasul 2: motorul — o buclă care pune toate întrebările
Aici folosești bucla „repetă de ... ori" din lecția despre bucle. Construiește pe pisică:
- „când se dă clic pe steagul verde"
- „seteaza
scorla0" și „seteazanumarla1" - „repetă de
5ori" (din Control), iar în interior:- „întreabă
element numar din intrebariși așteaptă" — blocul „întreabă" e în Detecție, iar în fereastra lui tragi blocul „element ... din intrebari" din Variabile, cu variabilanumarîn locul poziției; - „dacă ... atunci ... altfel" cu condiția: „
răspuns=element numar din raspunsuri" — blocul „răspuns" e tot în Detecție; - pe ramura atunci: „modifică
scorcu1" + „spuneCorect!pentru1secunde"; - pe ramura altfel: „spune
Greșit!pentru1secunde"; - după blocul dacă/altfel, tot în buclă: „modifică
numarcu1".
- „întreabă
Recitește construcția: bucla rulează de 5 ori, iar numar crește la fiecare tură, deci „element numar din intrebari" nimerește pe rând întrebările 1, 2, 3, 4, 5. Două liste, o buclă, un singur „dacă" — ăsta e tot motorul.
Pasul 3: finalul cu verdict
După blocul „repetă", deci în afara buclei, adaugă verdictul:
- „spune
alătură Ai obținut scor din 5pentru3secunde" — folosește blocul verde „alătură ... ..." din Operatori ca să lipești textul cu variabila (pune două blocuri „alătură" unul în altul ca să prinzi și textul, șiscor, și „ din 5"). - Sub el, un „dacă ... atunci ... altfel" cu condiția „
scor>3": pe atunci „spuneBravo, ești pregătit!", pe altfel „spuneMai repetă o dată lecția.".
Cosmetică de 2 minute care schimbă tot: dă clic dreapta pe listele de pe scenă → ascunde (sau debifează-le în paletă), ca jucătorul să nu vadă răspunsurile. Scorul rămâne vizibil.
Dacă nu merge
- Răspunsul corect e considerat greșit. Aproape sigur e o diferență de scriere: majusculă, spațiu în plus la finalul textului din listă, diacritice. Standardizează: în listă doar litere mici fără spații de prisos și cere în întrebare „(un cuvânt, litere mici)".
- Se pune de 5 ori aceeași întrebare. Lipsește „modifică
numarcu1" din buclă sau a ajuns în afara ei. Trebuie să fie ÎN „repetă", după dacă/altfel. - Scorul pornește de la valoarea din jocul trecut. Lipsesc setările la zero de la început. „seteaza
scorla0" și „seteazanumarla1" stau imediat sub steagul verde, înaintea buclei. - Blocul „element ... din ..." nu intră în fereastra lui „întreabă". Trage-l încet exact peste fereastra albă, până când aceasta capătă un contur luminos; abia atunci eliberează.
- Mesajul final arată
Ai obținut scor din 5cu cuvântul „scor" în loc de număr. Ai scris „scor" de la tastatură în loc să tragi blocul portocaliu al variabilei în „alătură".
Misiunea ta
Nivel de bază (obligatoriu): quiz-ul cu 5 întrebări, scor și verdict final, cu listele ascunse.
Extindere: extinde-l la 10 întrebări. Ce trebuie schimbat în program? (Corect: aproape nimic — doar numărul din „repetă" și mesajul „din 5". Observă câtă muncă ai fi avut cu varianta „zece blocuri unul sub altul".)
Provocare: a treia listă, indicii. Când jucătorul greșește, pisica îi arată indiciul de pe aceeași poziție și îi mai dă o șansă la aceeași întrebare — a doua încercare corectă aduce doar jumătate de punct? În Scratch nu ai jumătăți simple, deci decide tu regula și implementeaz-o.
Ai terminat când:
- toate cele 5 întrebări curg fără nicio intervenție în program;
- scorul e corect la orice combinație de răspunsuri (testează: toate bune, toate greșite, amestecat);
- un coleg a dat quiz-ul până la capăt și a primit verdictul potrivit scorului lui.