Instructiunea IF
Sintaxa: if (exp_logica) instrDA; else instrNU;
Efect:
- se evalueaza valoarea expresie logice
- daca valoarea calculata este adevarata (nenula) se executa instructiunea instrDA si apoi instructiunea de dupa IF
- daca valoarea calculata a expresiei este nula se executa instructiunea instrNU (daca exista ramura ELSE) si apoi instructiunea de dupa IF
Exemplu:
- if (a%2==0) cout>>"valoarea este para"; else cout<<" valoarea este impara";
- se verifica daca restul impartirii la 2 a variabilei A este zero
- daca DA se executa cout>>"valoarea este para";
- daca NU se executa cout>>"valoarea este impara";
Observatii:
- in C/C++ instructiunile, pe langa efectul lor, returneaza o valoare adevarat (1 - unu) daca se executa corect si fals (0 - zero) daca executia a fost eronata;
- secventa if (a=b) instr1; else instr2; va executa intotdeauna numai instr1 pentru ca atribuirea a=b se executa corect
- a nu se confunda a=b (lui a i se atribuie valoarea lui b) cu a==b (care verifica daca cele doua valori sunt egale)
- daca in loc pentru o valoare a conditiei testate algortimul impune executarea a mai mult de o instructiune, acestea se vor incadra intre acolade: if (conditie) { ...instructiuni pe ramura DA} else {instructiuni pe ramura NU};
Probleme:
- Fie N un numar natural. Sa se afiseze textul PAR sau IMPAR, functie de valoarea lui N.
- Fie N un numar natural. Sa se afiseze textul POZITIV, NEGATIV sau ZERO dupa caz.
- Fie A si B capetele unui interval. Sa se stabileasca daca o valoare X apartine intervalului [A,B].
- Fie A si B doua valori intregi. Sa se afiseze A si B in ordine crescatoare.
- Fie A si B doua valori intregi. Sa se calculeze X, solutia ecuatiei A*X+B=0.
Observatii:
- Se verifica valoarea expresiei N%2==0
- Se compara N cu 0 si se afiseaza dupa caz.
- Daca A este mai mare decat B, valorile trebuie interschimbate.
- -
- Trebuie verificat daca A nu este zero, caz in care se afiseaza un mesaj si se iese fortat, cu RETURN.
cum e cu iesitul acela fortat? De ce trebuie folosit RETURN?
RăspundețiȘtergereIn limbajul C, programul principal se declara de obicei
RăspundețiȘtergereint main ()
{
...
}
Aceasta este o functie cu tip care cere returnarea unei valori ( return exp;). Ideea era ca daca valorile citite de un program sunt gresite sa se poata iesi imediat prin
if ( conditie ca datele sunt gresite) {cout<<"GRESIT"; return 0;};
La executarea instr RETURN programul se termina. BRUSC! :)
Apreciez interesul tau. Faci ca munca mea sa conteze.
multumesc! mi-ai luminat calea...Fara prea multe laude...
RăspundețiȘtergereTocmai am devenit vedeta in clasa..(a 9-a) la inceput...dar oricum multumesc din suflet