Aloritmi legati de utilizarea instructiunii For

 

instrucţiunea for( ) este o structură ciclică cu test iniţial şi implementează structura ciclică cu număr cunoscut de paşi

Sintaxa:

for (expresie1; expresie2; expresie3)

instructiune;

 

Funcţionarea:

evaluare expresie1
ATÂTA TIMP CÂT expresie2 este TRUE REPETĂ

instrucţiune

evaluare expresie3

 

Nu este obligatorie prezenţa expresiilor, ci doar a instrucţiunilor vide.

forCitTast

rezForCitTast

 

forCitFis

rezForCitFis

 

 

Up Home Structura Site Algoritmi elementari

instrucţiunea Break

forţează ieşirea din interiorul unei bucle, fără a se mai ţine seama de condiţia de menţinere în buclă. Instrucţiunile situate în corpul buclei după instrucţiunea break nu vor mai fi executate.

 

instrucţiunea Continue

duce la ignorarea instrucţiunilor din buclă, situate după aceasta, şi testarea din nou a expresiei de menţinere în buclă. În cazul buclelor for, se realizează şi evaluarea celei de a treia expresii , responsabilă cu incrementarea contorilor.

 

Up Home Structura Site Algoritmi elementari

 

EXEMPLE DE ALGORITMI

 

A. Verificarea dacă un număr n este sau nu prim

Lucrul cu variabile FANION

Fanionul este o variabilă care poate avea doar două valori: 0 sau 1

Se utilizează în două cazuri distincte

  1. În cazurile în care trebuie să se verifice dacă se îndeplineşte o condiţie

  2. f = 1; // se presupune faptul că este îndeplinită condiţia

    în for, while sau do while if(condiţie) f = 0;
    ATENŢIE! IF-ul de mai sus NU ARE PARTE DE ELSE
    Apoi, într-un if – else se tipăreşte concluzia (este sau NU îndeplinită condiţia)


  3. În cazurile în care se caută ceva
  4. f = 0; // la început, evident nu am găsit

    în for, while sau do while if(condiţie) f = 1;
    ATENŢIE! IF-ul de mai sus NU ARE PARTE DE ELSE
    Apoi, într-un if – else se tipăreşte concluzia (am găsit sau NU ceea ce căutam)

    În problema verificării dacă un număr n este sau nu prim, suntem în primul caz. Am notat chiar cu prim variabila fanion.

     

     

    forPrim

    rezForPrim1

    rezForPrim2

    O variantă on-line poate fi experimentată la forPrim sau la forPrim

     

    Up Home Structura Site Algoritmi elementari

     

    B. Calculul unor sume şi produse recurente

     

    sumeRecurente

     

    forSumeRecurente

    rezForSumeRecurente

    O variantă on-line poate fi experimentată la forFormuleRecurente sau la forFormuleRecurente

    Up Home Structura Site Algoritmi elementari

     

    C. Şirul lui Fibonacci

    Şirul lui Fibonacci este definit recursiv ca ai = ai-2 + ai-1, cu a0 = 0 şi a1 = 1

    Deci:

    a0 = 0

    a1 = 1

    a2 = 0+1=1

    a3 = 1+1=2

    a4 = 1+2=3

    a5= 2+3=5

    a5 = 3+5=8

    ................

    forFibonacci

    rezForFibonacci

    O variantă on-line poate fi experimentată la forFibonacci sau la forFibonacci

    Up Home Structura Site Algoritmi elementari

     

     

    D. Maxime şi minime

     

    forMaxMin

    rezForMaxMin

    O variantă on-line poate fi experimentată la forMaxMin sau la forMaxMin

     

    Up Home Structura Site Algoritmi elementari