Documente Academic
Documente Profesional
Documente Cultură
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
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)
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
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