Informatică Gimnaziu (5-8)

Structura alternativa (decizionala): daca...atunci...altfel (if...then...else)

Structura alternativa este o constructie fundamentala in programare care permite unui program sa ia decizii si sa execute diferite actiuni in functie de o conditie. Ea raspunde la intrebarea: 'Ce se intampla daca o afirmatie este adevarata sau falsa?'. In pseudocod, aceasta structura se scrie de obicei astfel: DACA <conditie> ATUNCI <instructiuni1> ALTFEL <instructiuni2>.

In majoritatea limbajelor de programare, cum ar fi Python, C++ sau Scratch, conceptul este acelasi: if conditie: then instructiuni else instructiuni. Conditia este o expresie logica care poate fi evaluata ca fiind adevarata (true) sau falsa (false). De exemplu, putem verifica daca un numar este mai mare decat altul, daca un utilizator a introdus un text corect, sau daca o variabila are o anumita valoare.

Daca conditia este adevarata, se executa blocul de instructiuni din partea 'atunci'; daca este falsa, se executa blocul 'altfel'. Este important de inteles ca 'altfel' este optional: putem avea un simplu 'daca...atunci' fara ramura alternativa. In viata de zi cu zi, folosim constant astfel de decizii: 'Daca ploua, iau umbrela; altfel, nu iau.' In programare, structura alternativa permite crearea de aplicatii interactive care reactioneaza la date de intrare, la starea sistemului sau la evenimente externe.

Fiecare ramura poate contine una sau mai multe instructiuni, inclusiv alte structuri alternative (structuri imbricate). O atentie deosebita trebuie acordata egalitatii (==) in limbajele de programare, pentru a nu confunda atribuirea (=) cu comparatia. De asemenea, conditiile pot fi compuse folosind operatori logici precum SI (and), SAU (or), NU (not), permitand decizii complexe.

Intelegerea acestei structuri este esentiala pentru a trece la algoritmi mai avansati, cum ar fi buclele sau functiile.

Exemple

  • Exemplul 1: Verificare paritate. Pseudocod: DACA numar % 2 == 0 ATUNCI scrie 'Numarul este par' ALTFEL scrie 'Numarul este impar'. In Python: if numar % 2 == 0: print('Numarul este par') else: print('Numarul este impar'). Acest exemplu arata cum o simpla operatie matematica (modulo) poate decide ce mesaj se afiseaza.
  • Exemplul 2: Nota la un test. DACA nota >= 5 ATUNCI scrie 'Promovat' ALTFEL scrie 'Respins'. Aici conditia este o comparatie (nota mai mare sau egala cu 5). Daca nota este 7, se va afisa 'Promovat'; daca este 4, se afiseaza 'Respins'. Se poate adauga si o ramura pentru cazul in care nota este exact 10: DACA nota == 10 ATUNCI scrie 'Felicitari, nota maxima!'.
  • Exemplul 3: Acces la un joc pe baza varstei. DACA varsta >= 12 ATUNCI scrie 'Acces permis' ALTFEL scrie 'Acces interzis, trebuie sa ai minim 12 ani'. Acest exemplu evidentiaza utilizarea structurii pentru controlul accesului. In plus, putem imbrica: DACA varsta >= 12 ATUNCI DACA varsta >= 18 ATUNCI scrie 'Acces complet' ALTFEL scrie 'Acces restrictionat (sub 18)' ALTFEL scrie 'Acces interzis'.

Concepte cheie: Conditie logica (adevarat/fals), Ramura THEN (atunci) si ELSE (altfel), Structuri alternative imbricate (if in interiorul if-ului)

Vrei exerciții pe lecția asta + AI care te ajută pas cu pas?
Cont gratuit — 20 întrebări AI/zi, exerciții nelimitate.

Creează cont