Curs C++ | Sectiunea 7 – If-Else

 

Desi am discutat despre intructiunea conditionata in sectiunea anterioara, mai avem cate ceva de povestit 🙂 .

💡 Pana acum am lucrat doar cu un caz simplu “daca ceva este adevarat … atunci faci asta“. Dar daca nu este adevarat nu luam nicio actiune. Aici intervine else: “daca ceva este adevarat … atunci faci asta … altfel faci asta“.

 

if-else

if (true_or_not) do_this_if_true; else do_this_if_false;

Astfel, keyword-ul (reserved keyword) else ne spne ce sa facem in cazul in care conditia unui if nu este indeplinita. Instructiunea if-else are urmatorii pasi:

  • daca expresia din if este adevarata (true), do_this_if_true este executata si instructiunea if-else ia sfarsit
  • daca expresia din if este falsa (false), do_this_if_false este executata si instructiunea if-else ia sfarsit

❗ Atat if cat si else pot contine o singura instructiune. Daca ne dorim sa avem mai mult de una, trebuie sa folosim acolade, astfel:

if (true_or_not) 
{
do_this_if_true_one;
do_this_if_true_two;
}
else
{
do_this_if_false_one;
do_this_if_false_two;
}

 

else if

❓ Este posibil sa iti pui intrebarea daca putem folosi un if in if. Ei bine, raspunsul este da. O sintaxa ar arata de forma urmatoare:

if (true_or_not) 
{
if (true_or_not_two)
{
do_this_if_true_two;
}
else
{
do_this_if_false_two;
}
}
else
{
if(true_or_not_three)
{
do_this_if_true_three
}
else
{
do_this_if_false_three;
}
}

💡 Modul acesta de folosire poarta numele de nesting. Necesita foarte multa atentie intrucat poti pierde usor firul logic. Ce ar mai fi de retinut este ca fiecare else are ca referinta cel mai apropiat if. Este indicata identarea pentru o citire mai usoara.

O alta metoda de a scrie un astfel de scenariu este prin instructiunea else if:

if (true_or_not) 
do_this_if_true;
else if (true_or_not_two)
do_this_if_true_two;
else if(true_or_not_three)
do_this_if_true_three
else
do_this_if_false;

💡 Acest mod poarta numele de cascade. Si aici se poate observa o imbunatatire a citirii codului prin identare.

Acesta este finalul si acestei sectiuni. Daca aveti intrebari puteti folosi informatiile de aici pentru a da de mine 🙂 .

➡ Sectiunea anterioara:Curs C++ | Sectiunea 6 – Input & Output

➡ Sectiunea urmatoare:Curs C++ | Sectiunea 8 – Noi tipuri de date

You may also like...