LECTIA 5

Repeta Pana Cand - Bucla cu Conditie

🎯 OBIECTIV

Vreau ca sprite-ul sa repete o actiune pana cand se intampla ceva!

La finalul acestei lectii, vei putea crea bucle care se opresc automat cand o conditie devine adevarata - perfect pentru jocuri!

🔧 INCEARCA

Hai sa facem pisica sa mearga pana atinge marginea:

  1. Deschide Scratch Editor
  2. Muta pisica in partea stanga a scenei
  3. Din Control, trage repeta pana cand <>
  4. Din Senzori, pune <atingi [marginea]?> in conditie
  5. In interior, adauga mergi 5 pasi
  6. Dupa bucla, adauga spune [Am ajuns!]
  7. Apasa steagul verde si urmareste!
Codul tau ar trebui sa arate asa:
cand se apasa steagul verde

mergi la x: -200 y: 0

repeta pana cand <atingi [marginea]?>

mergi 5 pasi

spune [Am ajuns la margine!] timp de 2 secunde
📚 INVATA

Diferenta dintre "repeta" si "repeta pana cand"

repeta (N) repeta pana cand
Stii EXACT de cate ori se repeta NU stii de cate ori - depinde de conditie
Exemplu: deseneaza un patrat (4 ori) Exemplu: mergi pana atingi peretele
Se opreste dupa N executii Se opreste cand conditia devine ADEVARATA

Cum functioneaza?

Incepe bucla
Conditia e adevarata?


DA →
IESI din bucla


NU →
Executa codul din interior
revino la verificare
Din viata reala:

"Mergi inainte PANA CAND ajungi la semafor"

"Invata PANA CAND intelegi"

"Joaca-te PANA CAND mama te cheama"

Cand folosim "repeta pana cand"?

Situatii perfecte pentru aceasta bucla:

• Jocuri: "repeta pana cand <atingi [inamic]?>"

• Cautare: "repeta pana cand <atingi [cheie]?>"

• Cronometru: "repeta pana cand <timer > 10>"

• Input: "repeta pana cand <tasta [spatiu] apasata?>"

Atentie!

Daca conditia nu devine niciodata adevarata, bucla ruleaza LA INFINIT! Asigura-te ca exista o cale de iesire.

VERIFICA

1. Cand se opreste bucla "repeta pana cand"?

Dupa un numar fix de repetari
Cand conditia devine ADEVARATA
Cand conditia devine FALSA
Niciodata, ruleaza la infinit

2. Care tip de bucla folosesti cand NU stii exact de cate ori trebuie sa repeti?

repeta (10)
repeta pana cand
daca...atunci
asteapta

3. In codul "repeta pana cand <atingi [marginea]?> | mergi 10 pasi", ce se intampla DUPA ce pisica atinge marginea?

Continua sa mearga
Se teleporteaza la centru
Bucla se opreste si se executa urmatorul bloc
Programul da eroare