Sunteți pe pagina 1din 3

Proiectul ROSE – Bacul, mai accesibil decât crezi - informatică

TEMA 2 – algoritmi elementari

FIȘA DE TEORIE
ALGORITMI - PSEUDOCOD
Structura alternativă
Dacă expresie Se evaluează expresia.
atunci  Dacă valoarea expresiei este adevărat, atunci se
instrucţiuni_1 execută instrucţiune_1.
altfel  Dacă valoarea expresiei este fals, se execută
instrucţiuni_2 instrucţiune_2.
Observaţii: ramura atunci poate lipsi, instrucţiuni
pot fi orice instrucţiuni

Structura repetitivă - executarea repetată a unei instrucţiuni, controlată de valoarea unei expresii
Structura repetitivă condiţionată anterior
Cât-timp expresie execută  Pas 1: se evaluează expresia;
instrucţiuni;  Pas 2: dacă valoarea expresiei este fals, se iese din
instrucţiunea cât-timp; dacă valoarea expresiei este
adevărat, se execută instrucţiunea, apoi se revine la Pas 1.
Observaţii:
1. Instrucţiunea se execută repetat, cât timp valoarea expresiei este adevărat. Pentru ca ciclul să nu
fie infinit, este obligatoriu ca instrucţiunea care se execută să modifice cel puţi una din variabilele
care intervin în expresie, astfel încât aceasta să poată lua valoarea fals.
2. Dacă expresia are de la început valoarea fals, instrucţiunea nu se repetă nici măcar o dată.
3. instrucţiuni pot fi orice instrucţiuni
Structura repetitivă condiţionată posterior
Repetă  Pas 1: se execută instrucţiunea;
instrucţiuni  Pas 2: se evaluează expresia;
până-când expresie;  Pas 3: dacă valoarea expresiei este adevărat, se iese
din instrucţiunea cât-timp; dacă valoarea expresiei
Observaţii: este fals, se revine la Pas 1.
1. Instrucţiunea se execută repetat, cât timp valoarea expresiei este falsă. Pentru ca ciclul să nu fie
infinit, este obligatoriu ca instrucţiunea care se execută să modifice cel puţi una din variabilele
care intervin în expresie, astfel încât aceasta să poată lua valoarea adevărat. Deoarece evaluarea
expresiei se face după execuţia instrucţiunii, instrucţiunea se execută cel puţin o dată.
2. instrucţiuni pot fi orice instrucţiuni
Structura repetitivă cu număr finit de paşi
Pentru contor ←expresie_1, expresie_2 execută
instrucţiuni

 Pas 1: se evaluează expresie_1.


 Pas 2: se atribuie variabilei contor valoarea expresiei expresie_1.
 Pas 3: se evaluează expresie_2.
 Pas 4: dacă valoarea variabilei contor este mai mare decât valoarea expresiei
expresie_2, atunci se iese din instruncţiunea repetitivă. Dacă valoarea variabilei contor este
mai mică sau egală cu valoarea expresiei expresie_2, atunci se execută instrucţinue şi apoi
se incrementează (se măreşte cu 1) valoarea variabilei contor, după care se revine la Pas 3.
Observaţii:
Proiectul ROSE – Bacul, mai accesibil decât crezi - informatică
TEMA 2 – algoritmi elementari

1. Dacă iniţial valoarea expresiei expresie_1 este mai mare decât valoarea expresiei expresie_2,
instrucţiune nu se execută nici o dată.
2. În caz contrar dacă expresie_1<= expresie_2, şi dacă instrucţiune nu modifică valorile
variabilelor care intervin în expresie_2, instrucţiune se execută de (expresie_2 - expresie_1 + 1) ori.
3. instrucţiuni pot fi orice instrucţiuni
4. Poate fi extinsă la forma Pentru contor ←expresie_1, expresie_2, pas execută instrucţiuni şi
atunci variabila contor=contor+pas (poate fi mărită pas>0, sau micşorată pas<0)

Simulare cât-timp cu ajutorul repetă


Dacă expresie atunci
Cât-timp expresie execută repetă
instrucţiuni; instrucţiuni
până când !expresie;

Observaţii:
1. A fost necesară testarea iniţială a expresiei deoarece, spre deosebire de instrucţiunea Cât-timp,
instrucţiunea Repetă efectuează o dată instrucţiune înainte de a testa expresia.
Dacă se ştie că iniţial expresie este adevărată
Repetă
atunci testarea poate fi eliminată
instrucţiuni
până când !expresie;
2. expresie a fost înlocuit cu !expresie

Simulare repetă cu ajutorul cât-timp


instrucţiuni
Repetă Cât-timp !expresie execută
instrucţiuni instrucţiuni
până-când expresie;

Observaţii:
1. În acest caz a fost necesar să se execute o dată instrucţiunea în afara ciclului.
2. expresie a fost înlocuit cu !expresie

Simularea pentru cu ajutorul cât timp


contor ← expresie_1
Pentru contor ←expresie_1, expresie_2 execută Cât-timp contor ≤ expresie_2 execută
instrucţiuni instrucţiuni
contor ← contor + 1

Simularea pentru cu ajutorul instrucţiunii repetă


contor ← expresie_1
dacă contor ≤ expresie_2 atunci
repetă
instrucţiune;
contor ← contor + 1;
până când contor ≤ expresie_2;
Proiectul ROSE – Bacul, mai accesibil decât crezi - informatică
TEMA 2 – algoritmi elementari

Simularea cât timp / repetă cu ajutorul instrucţiunii pentru


- este posibil doar dacă în secvenţele cu cât timp, respectiv repetă există o variabilă cu rol de
“contor” care este incrementată de la o valoare iniţială la o valoare finală

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