Sunteți pe pagina 1din 7

Instrucțiunea alternativă/decizională IF

I.
Instrucțiunea if este o structură folosită în situația în care rezultatul algoritmului și modul
în care se execută instrucțiunile depind de valoarea de adevăr a unei condiții. Condiția formulată
se testează cu ajutorul unei expresii logice.
Expresia logică poate avea două valori: 1-condiția adevărată; 0-condiția falsă

Forma 1
if (condiție) then

instrucțiune1;

endif;
Exemplu
//Sa scriem un program in care verificam daca numarul intreg a este mai mare
decat 30.
#include <iostream>
using namespace std;

int main() {
int a;
cout<< "Scrie numarul: ";
cin>>a; //citim de la tastatura

if (a>30) //Daca a este mai mare decat 30


{
//vom afisa numarul introdus este mai mare decat 30
cout<<"Numarul introdus este mai mare decat 30."<<endl;
}

}
Forma 2

if (condiție) then

instrucțiune 1;

else

instrucțiune 2;

endif;

Exemplu

//Sa scriem un program in care verificam daca numarul introdus a este mai mare
sau mai mic decat 30.
#include <iostream>
using namespace std;

int main() {
int a;
cout<< "Scrie numarul: ";
cin>>a;

if (a>30)
{
cout<<"Numarul introdus este mai mare decat 30"<<endl;
}
else
{
cout<<"Numarul introdus este mai mic decat 30";
}
}
Forma 3: Instrucțiunea compusa

if (condiție) then

mai multe instructiuni;

else

mai multe instructiuni;

endif;

Exemplu
//Daca numarul este mai mare decat 30, vom verifica si paritatea
#include <iostream>
using namespace std;
int main()
{
int a;
cout<<"Scrie un numar: ";
cin>>a;
if (a>30)
{
if (a%2==0)
cout<<"Numarul este mai mare decat 30 si este par." <<endl;

else
cout<<"Numarul este mai mare decat 30 si este impar." <<endl;
}

else

cout <<"Numarul este mai mic decat 30"<<endl;


}
3 Formula "else if()"
Cu "if() ... else" sunt posibile executia doar a doua optiuni, cea de la "if()" sau de la
"else". Dar sunt stuatii in care avem mai multe optiuni, in acest caz se foloseste formula
"else if()" (altfel daca).
Cu aceasta se pot crea si alte optiuni suplimentare intre cele doua. Sintaxa generala
pentru folosirea acestei formule este:

• if (conditie 1) {
// codul care va fi executat daca este Adevarata conditia 1
}
else if (conditie 2) {
// codul ce va fi executat daca prima conditie este Falsa si este
Adevarata conditia 2
}
else if (conditie 3) {
// codul care va fi executat daca primele doua conditii sunt False si este
Adevarata conditia 3
}
// ...
else {
// codul executat daca toate conditiile sunt False
}
- Pot fi adaugate oricate optiuni "else if".
Exemplu
#include <iostream>
using namespace std;

int main()
{
int a;
cout<<"Da un numar: ";
cin>>a;

if (a <=30)
{
cout<< "Numarul este mai mic decat 30";
}
else if (a%2 ==0)
{
cout <<" Numarul este mai mare decat 30, si este par ";
}
else

{
cout<< "Numarul este mai mare decat 30, impar";
}

Exercitiu
Sursă: https://www.pbinfo.ro/probleme/categorii/12/elemente-de-baza-ale-limbajului-structura-
de-decizie?start=0
La un concurs pot participa copii cu vârste între a și b ani, inclusiv. Gigel are n ani. Stabiliți
dacă poate participa la concurs.
2. Se introduc două numere întregi. Să se testeze dacă primul număr este predecesorul celui de
al doilea și să se afișeze un mesaj corespunzător.

#include <iostream>
using namespace std;
//Se verifica daca primul numar este predecesorul celui de al doilea.
int main() {
int a, b;
cout << "Introduceti primul numar: "; cin >> a;
cout << "Introduceti al doilea numar: "; cin >> b;
if (b==a+1)
cout << "DA";
else cout << "NU" << endl;
}
3. Să se scrie un program care citeşte de la tastatură un număr întreg şi determină semnul său.
#include <iostream>
using namespace std;
//Se verifica daca un numar este pozitiv, negativ sau nul
int main() {
int a;
cout << "Introduceti un numar intreg: "; cin >> a;
if (a<0)
cout << "Numarul introdus este negativ";
else if (a==0)
cout << "Numarul este nul";
else
cout << "Numarul este pozitiv" <<endl;
}

4. Activitatea suplimentară
Fiind dată nota unui elev să se afișeze dacă acesta este corigent sau promovat.

S-ar putea să vă placă și