Programarea algoritmilor liniari (secvențiali)
Algoritmul liniar reprezintă o secvență de instrucțiuni executate în ordine strictă, de la prima la ultima, fără salturi sau repetări.
Caracteristici ale algoritmilor liniari:
• Execuție pas cu pas
• Fiecare instrucțiune se execută exact o dată
• Ordinea de execuție este fixă și predictibilă
Citirea și afișarea datelor
Obținerea datelor de la utilizator
întreabă [Cum te cheamă?] și așteaptă
Funcționare:
• Afișează o casetă de dialog cu întrebarea
• Programul se oprește până la introducerea răspunsului
• Răspunsul se stochează automat în variabila RĂSPUNS
Stocarea datelor în variabile
setează [nume v] la (răspuns)
Pași pentru crearea variabilelor:
1. Accesarea categoriei "Variabile"
2. Clic pe "Creează o variabilă"
3. Introducerea numelui variabilei
4. Selectarea domeniului (pentru toate sprite-urile sau doar pentru acest sprite)
Calculul și afișarea rezultatelor
setează [rezultat v] la ((numărul1) + (numărul2))
spune (îmbină [Rezultatul este: ] (rezultat))
Operatori aritmetici disponibili:
• + (adunare)
• - (scădere)
• * (înmulțire)
• / (împărțire)
Funcția ÎMBINĂ (JOIN): Permite concatenarea textului cu valori numerice pentru afișarea mesajelor compuse.
Programarea algoritmilor cu ramificări (condiționali)
Algoritmii condiționali permit programului să ia decizii bazate pe evaluarea unor condiții, modificând fluxul de execuție.
Structura alternativă simplă (IF)
dacă <(vârstă) > (18)> atunci
spune [Ești major!]
Funcționare:
• Evaluează condiția din blocul hexagonal
• Dacă condiția este adevărată, execută blocurile din interior
• Dacă condiția este falsă, sare peste blocurile din interior
Structura alternativă complexă (IF-ELSE)
dacă <(nota) ≥ (5)> atunci
spune [Promovat!]
altfel
spune [Respins!]
Avantaje:
• Acoperă toate cazurile posibile
• Garantează că se execută întotdeauna o acțiune
• Logică completă de decizie
Operatori logici pentru condiții complexe
Operatorul ȘI (AND)
<(vârstă) > (18)> și <(permis) = [da]>
Operatorul SAU (OR)
<(zi) = [sâmbătă]> sau <(zi) = [duminică]>
Operatorul NU (NOT)
nu <(ploaie) = [da]>
Exemple de condiții complexe:
dacă <<(temperatura) > (20)> și <nu <(ploaie) = [da]>>> atunci
spune [Vreme perfectă pentru plimbare!]
Programarea algoritmilor ciclici (repetitivi)
Algoritmii ciclici permit repetarea unor secvențe de instrucțiuni, optimizând codul și automatizând procesele repetitive.
Ciclul infinit (FOREVER)
pentru totdeauna
mută (10) pași
dacă <atingi marginea?> atunci
rotește ↻ (180) grade
Utilizări tipice:
• Animații continue
• Jocuri (bucla principală)
• Monitorizarea constantă a condițiilor
Ciclul cu număr fix de repetiții (REPEAT)
repetă (4)
mută (100) pași
rotește ↻ (90) grade
Exemplu practic - Desenarea unui pătrat: Acest cod creează un pătrat perfect prin repetarea de 4 ori a secvenței: mișcare înainte + rotire 90°.
Avantaje:
• Cod mai scurt și mai clar
• Ușor de modificat (schimbarea unui singur număr)
• Reducerea erorilor de copiere
Ciclul condiționat posterior (REPEAT UNTIL)
repetă până când <atingi [marginea v]?>
mută (5) pași
rotește ↻ (1) grade
Caracteristici:
• Execută instrucțiunile până când condiția devine adevărată
• Verificarea condiției se face la sfârșitul fiecărei iterații
• Garantează cel puțin o execuție a corpului ciclului
Diferența față de WHILE:
• REPEAT UNTIL = repetă până când condiția e adevărată
• WHILE = repetă cât timp condiția e adevărată