Naredbe grananja omogućavaju nam pisanje kompleksnih programa. Zahvaljujući naredbama grananja moguće je realizovati tzv. razgranate algoritme u programskom jeziku Paskal. If naredba je jedna od dve naredbe grananja u Paskalu (o drugoj će biti više reči kasnije) i njen sintaksni dijagram prikazan je na donjoj slici.
Iz sintaksnog dijagrama vidimo da je if naredbu u Paskalu moguće realizovati na dva načina:

Ako su N1i N2 neke naredbe, a L neki logički izraz tada su sledeći zapisi if naredbi ispravni.
If L then N1;
If L then N1 else N2;
Svaki logički izraz može biti samo tačan (true) ili netačan (false). U prvom slučaju (If L then N1;) važi: ako je logički izraz L tačan izvršiće se naredba N1, a ako nije neće se izvršiti ta naredba. U drugoj realizaciji grananja (If L then N1 else N2;) važi sledeće: ako je logički izraz tačan izvršiće se naredba N1 a ako je netačan izvršiće se naredba N2.
Na ovom mestu, primetimo da jedan logički izraz može biti sačinjen od više jednostavnih logičkih izraza koji su povezani logičkim operatorima (vidi logički tip) ali i takav logički izraz može biti samo tačan ili netačan. Takođe, svaka naredba može biti sastavljena od više naredbi i u tom slučaju naziva se blok naredba. I takva blok naredba, koja se može prostirati i kroz stotinjak programskih linija, može biti predstavljena tako jednostavnim zapisom kao što je npr. N1. O preciznom zapisu if naredbe koja u svojim "granama" ima blokove naredbi biće reči kasnije.
Primer 1.
A:=2; B:=8; C:=0;
if A>B then C:=A+B;
C:= C+12;
writeln (C);
Pošto je vrednost promenljive A manja od vrednosti promenljive B to logički izraz koji se nalazi u if naredbi nije ispunjen, tako da se naredba koja se nalazi posle rezervisane reči then neće izvršiti, već program nastavlja sa izvršavanjem narednih naredbi koje se nalaze ispod if naredbe. Ovaj program će ispisati na ekran broj 12.

Algoritamski zapis if naredne koja ima samo then granu i nema else granu dat je na gornjoj slici.
Primer 2.
A:=2; B:=8;
if A>B then writeln ('A je vece od B')
else writeln ('A je manje ili jednako B');
Ni u ovom primeru logički izraz u if naredbi nije ispunjen tako da se neće izvršiti naredba koja se nalazi posle rezervisane reči then, već naredba koja se nalazi posle rezervisane reči else. Obratimo pažnju da tačka zarez stoji samo na kraju if naredbe (dakle, samo posle else dela, a ne i posle then dela).

Algoritamski zapis za if naredbu koja ima then i else grane dat je na gornjoj slici.
Vežbe:
1. Napisati algoritam i program (NAIP) koji za uneta tri cela broja određuje i ispisuje najveći od tih brojeva.
2. NAIP koji za ulaz ima stranice pravougaonika a i b, i koji određuje obim i površinu (pravougaonika) i ispisuje veću od tih vrednosti (O i P).
3* . NAIP koji za dva data intervala realne prave (a1,b1) i (a2,b2) određuje:
- dužinu zajedničkog dela ta dva intervala,
- najveći interval sadržan u datim intervalima (presek) - ako ne postoji, dati odgovarajuću poruku,
- dužinu realne prave koju pokrivaju ta dva intervala i
- najmanji interval koji sadrži date intervale