top of page

Instructiunea for

 

Instrucţiunea FOR este o instrucţiune repetitivă care permite execuţia repetată a unei instrucţiuni în funcţie de valoarea unui contor.

Nu este o instrucţiune strict necesară, ea poate fi simulată cu ajutorul instrucţiunii WHILE. Totuşi, majoritatea programatorilor preferă să utilizeze instrucţiunea FOR.
 

 

 

 

 

InstrucÅ£iunea for are două forme: 

 

1)FOR identificator:=expresie1 TO expresie2 DO instrucţiune;(CAZUL CRESCĂTOR)

 

2)FOR identificator:=expresie1 DOWNTO expresie2 DO instrucÅ£iune;(CAZUL DESCRESCÄ‚TOR)

 

 

 

 

 

 

 

 

 

  Principiul de executie:

  • dacă valoarea obÅ£inută în urma evaluării expresiei1 este egală cu valoarea obÅ£inută în urma evaluării expresiei2, se atribuie variabilei de ciclare valoarea obÅ£inută în urma evaluării expresiei1, se execută instrucÅ£iunea abordată ÅŸi execuÅ£ia instrucÅ£iunii FOR este încheiată;

  • dacă valoarea obÅ£inută în urma evaluării expresiei1 este strict mai mică decît valoarea obÅ£inută în urma evaluării expresiei2, se atribuie variabilei de ciclare valoarea obÅ£inută în urma evaluării expresiei1 ÅŸi se trece la pasul următor;se execută instrucÅ£iunea subordonată;

  • dacă valoarea reÅ£inută de variabila de ciclare este strict mai mică decît valoarea obÅ£inută în urma evaluării expresiei2, (evaluare efectuată la început) se adună 1 variabilei de ciclare ÅŸi se trece la executarea instrucÅ£iunii subordonate; dacă valoarea reÅ£inută de variabila de ciclare este egală cu valoarea obÅ£inută în urma evaluării expresiei2, execuÅ£ia instrucÅ£iunii FOR se încheie. 

 

Diagrama de sintaxa:

Exemplu Program:

Program ce calculeaza cate numere se impart la 3 sau 4 din intervalul de la 1 la 1000.

 

Program Divizor; {Divizor - 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 n3, n4, i: integer; {Declaram variabilele n3, n4 si de tip integer - numere intregi}

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}

n3:=0; {Ii atribuim variabilei n3, care va calcula numarul de numere care se impart la 3, valoarea initiala 0}

n4:=0 {Ii atribuim variabilei n4, care va calcula numarul de numere care se impart la 4, valoarea initiala 0}

for i:=1 to 1000 do {Cat i<=1000 se efectueaza}

begin {Inceputul ciclului}

if (i mod 3=0) then inc(n3); {Daca i este divizibil prin 3, atunci se adauga la valoarea lui n3, 1}

if  (i mod 4=0) then inc(n4); {Daca i este divizibil prin 4atunci se adauga la valoarea lui n4, 1}

end; {Sfarsitul ciclului; intoarcerea la sintaxa for}

writeln('La 3 se impart: ',n3, ' numere'); {Afiseaza pe ecran  "La 3 se impart: ", afiseaza valoarea lui n3, afiseaza "numere", trece in rand nou}

writeln('La 4 se impart: ',n4, ' numere'); {Afiseaza pe ecran  "La 4 se impart: ", afiseaza valoarea lui n4, afiseaza "numere", 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}

 

 

Screenshot-uri:

© Creat in 2015 de Mirela. Toate drepturile rezervate!!

bottom of page