KULTUROSFERA

Quiz cu scor în Scratch

LaboratorScratch45 minD3.2Programare pe blocuri

Lecția-suport: Program pentru un obiect real — evaluare

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.

  1. Proiect nou. Personajul rămâne pisica — azi ea e profesorul.
  2. În categoria portocalie Variabile, apasă Creează o listă și numește-o intrebari.
  3. Creează a doua listă: raspunsuri.
  4. Listele apar pe scenă. Apasă + din colțul fiecăreia și introdu cele 5 întrebări în intrebari și răspunsurile corecte în raspunsuriîn aceeași ordine: răspunsul de pe poziția 3 e pentru întrebarea de pe poziția 3.
  5. Tot din Variabile, creează variabilele scor și numar (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ă:

  1. „când se dă clic pe steagul verde"
  2. „seteaza scor la 0" și „seteaza numar la 1"
  3. „repetă de 5 ori" (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 variabila numar î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ă scor cu 1" + „spune Corect! pentru 1 secunde";
    • pe ramura altfel: „spune Greșit! pentru 1 secunde";
    • după blocul dacă/altfel, tot în buclă: „modifică numar cu 1".

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:

  1. „spune alătură Ai obținut scor din 5 pentru 3 secunde" — 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, și scor, și „ din 5").
  2. Sub el, un „dacă ... atunci ... altfel" cu condiția „scor > 3": pe atunci „spune Bravo, ești pregătit!", pe altfel „spune Mai 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ă numar cu 1" 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 scor la 0" și „seteaza numar la 1" 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 5 cu 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.