Instructiunea If
În viața de zi cu zi de foarte multe ori folosim expresii ca:
Dacă plouă merg cu taxi.
sau
Dacă plouă atunci merg cu taxi altfel o să merg pe jos pe traseul stabilit.
Instrucțiunea if urmărește să cuprindă în algoritm tocmai astfel de situații – condiționale.
Pe marginea exemplului de mai sus putem să deducem sitaxa instrucțiunii în pseudocod:
Dacă <condiție> atunci instrucțiune1 altfel instrucțiune2 |
Dacă <condiție> atunci instrucțiune1
|
Prin urmare, observăm că forma lui Dacă poate îmbraca două forme: cu și fără altfel.
În pascal sintaxa instrucțiunii if este următoarea.
if <condiție> then instrucțiune1 else instrucțiune2; |
if <condiție> then instrucțiune1;
|
Compilatorul va executa instrucțiunea if în felul următor:
- Evalueză condiția.
- Dacă condiția este adevărată atunci execută instrucțiune1.
- Dacă ramura else există și condiția nu este adevărată se va executa instrucțiune2. Se trece la următoarea instrucțiune după if.
De exemplu, dacă dorim să verifică dacă un număr a este nul vom folosi instrucțiunea if in felul următor:
if a=0 then write(`numar nul`) else write(`numarul nu e nul`);
|
Daca a=0 atunci scrie (`numarul e nul`) Altfel scrie (`numarul nu este nul`);
|
Calculatorul va verifica dacă valoarea lui a este 0. Dacă este, va afișa numar nul. Dacă a are o valoare diferită de 0 se va afișa numărul nu e nul.
De exemplu dacă a=7 se va afișa numarul nu e nul.
Observații:
- Instrucțiunea if este o structură de control
- Instrucțiunea if este o instrucțiune de decizie (condițională) simplă
- Ramura else nu e obligatorie
- Înainte de else NU se pune ; .