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.
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.