Instrucţiunea if are două forme:
1)if <conditie> then <instructiune1> else<instructiune2>;
2)if <conditie> then <instructiune>;
Principiul de executie:
· se evaluează expresia logică;
· dacă aceasta are valoarea TRUE, atunci se execută secvenţa prezentată în cadrul instructiune1 iar în caz contrar se execută secvenţa prezentată în cadrul instructiune2 sau se iese din structură (cînd construcţia ELSE lipseşte).
Atenţie: dacă secvenţele cuprind mai mult de 2 instrucţiuni,acestea trebuie cuprinse între BEGIN şi END;
Instructiunea if
Instrucţiunea if este o instrucţiune condiţionată, deoarece urmăreşte să conţină în algoritm situaţii condiţionate. Din engleză "if " se traduce "dacă".

Diagrama de sintaxa:


Screenshot-uri:
Exemplu Program:
Program ce calculeaza cate suma, diferenta, produsul sau catul (in dependenta de aoperatorul introdus de la tastatura) a 2 numere intregi (introduse de la tastatura).
Program Aritmetica; {Aritmetica - numele programului}
uses crt; {Directiva ce permite utilizarea bibliotecii CRT, adica pot fi executate astfel de functii, precum: curatarea ecranului dupa executare, adaugarea culorilor, sunetelor in program etc.}
var x, y: integer; {Declaram variabilele x, y de tip integer - numere intregi}
c: char; {Declaram variabila c de tip char - caracter imprimabil}
begin {Inceputul programului}
clrscr; {Comanda ce va curata automat ecranul dupa executie}
textcolor(5); {Coloreaza textul programului in culoarea cu nr. 5 - magenta}
textbackground(7); {Coloreaza fundalul programului in culoarea cu nr. 7 - lightgray}
write('Introdu x, y: '); { Se afiseaza pe ecran fraza: " Introdu x, y: "}
readln(x, y); { Se citesc numerele introduse de la tastatura}
write('Introdu unul dintre operatorii +, -, *, / : '); { Se afiseaza pe ecran fraza: " Introdu unul dintre operatorii +, -, *, / : "}
readln(op); { Se citeste operatorul introdus de la tastatura, trece in rand nou}
if op='+' then writeln('Suma este: ', x+y); {Daca operatorul introdus este +, atunci afiseaza pe ecran " Suma este: ", efectueaza x+y si afiseaza rezultatul alaturi, trece in rand nou}
if op='-' then writeln('Diferenta este: ', x-y); {Daca operatorul introdus este -, atunci afiseaza pe ecran" Diferenta este: ", efectueaza x-y si afiseaza rezultatul alaturi, trece in rand nou}
if op='*' then writeln('Produsul este: ',x*y); {Daca operatorul introdus este *, atunci afiseaza pe ecran " Produsul este: ", efectueaza x*y si afiseaza rezultatul alaturi}
if op='/' then writeln('Catul este: ',(x/y):5:2)); {Daca operatorul introdus este /, atunci afiseaza pe ecran " Catul este: ", efectueaza x/y si afiseaza rezultatul pe 5 pozitii , cu 2 cifre dupa virgula, trece in rand nou}
writeln('Autor: Mirela Burduja'); {Se afiseaza pe ecran fraza: " Autor: Mirela Burduja", trece in rand nou}
readkey; {la apasarea unei taste, trece din ecranul negru in ecranul albastru}
end. {Sfarsitul programului}

