Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Instructiunea for

c



+ Font mai mare | - Font mai mic



Instructiunea for

Forma generala a instructiunii for este:



for (initializare; conditie; incrementare)

instructiune;

unde:

- initializare este o instructiune de atribuire utilizata pentru initializarea variabilei de control a ciclului. Nu exista nici o restrictie privitoare la tipul sau;

- conditie este o expresie relationala care se testeaza inaintea fiecarei iteratii: daca conditia este adevarata (diferita de 0), ciclul se continua; daca conditia este falsa (egala cu 0), instructiunea for se incheie;

- incrementare se evalueaza dupa fiecare iteratie specificand astfel reinitializarea ciclului.

Exemplu: Urmatorul program afiseaza pe ecran numerele de la 1 la 100.

# include <stdio.h>

void main (void)

Nu intotdeauna ciclul for trebuie sa se desfasoare in sensul cresterii variabilei de control. Putem crea cicluri for in care variabila de control se decrementeaza.

Exemplu: Programul urmator afiseaza numerele de la 100 la 1.

# include <stdio.h>

void main (void)

Nu exista restrictii in incrementarea sau decrementarea variabilei de control a ciclului.

Exemplu: Urmatorul program afiseaza pe ecran numerele de la 0 la 100 din 5 in 5:

# include <stdio.h>

void main (void)

Instructiunea instructiune din declaratia ciclului for poate fi o instructiune simpla sau un bloc (un grup de instructiuni delimitate de acolade) care va fi executat repetitiv.

Exemplu: Programul urmator afiseaza pe ecran numerele de la 0 la 99, precum si patratul acestora:

# include <stdio.h>

void main (void) }

Exemplu: Calculul factorialului unui numar: n! = 123n

# include <stdio.h>

void main (void)

Instructiunile for pot fi incluse una in alta.

Exemplu: Programul urmator parcurge un sir de caractere de la stanga la dreapta, afisand subsirurile ce au ca baza primul caracter.

# include <stdio.h>

# include <string.h>

void main (void)

}

Variante ale ciclului for: Limbajul C permite mai multe variante ale ciclului for care determina cresterea flexibilitatii acestuia in diferite situatii. Una din cele mai utilizate variante consta in folosirea a mai multe variabile de control a ciclului. In exemplul urmator, atat x cat si y sunt variabile de control a ciclului:

# include <stdio.h>



void main (void)

Acest program tipareste numerele de la 0 la 98 din 2 in 2. Se observa ca initializarile si incrementarile celor doua variabile sunt separate prin virgula.

Terminarea ciclului presupune testarea nu numai a variabilei de control cu anumite valori prestabilite, ci conditia de terminare a ciclului poate fi orice expresie C corecta.

Exemplu: Consideram un program pentru antrenarea unui copil in exercitiile de adunare. Daca copilul vrea sa se opreasca se apesa tasta T, atunci cand calculatorul il intreaba daca sa continue.

# include <stdio.h>

# include <conio.h>

void main (void)

/* Pentru terminare se apasa tasta t */ } }

O alta caracteristica interesanta a ciclului for este aceea ca nu se impune definirea tuturor celor trei parametri ai ciclului for, oricare dintre ei putand fi optionali. De exemplu, ciclul urmator se va executa pana cand de la tastatura se introduce numarul 123:

for (x = 0; x != 123;) scanf('%d', &x);

Deoarece instructiunea de incrementare a lui x lipseste, de fiecare data cand ciclul se repeta, programul testeaza ca x sa fie egal cu 123, dar nu modifica pe x in nici un fel. Daca de la tastatura se introduce 123, conditia buclei devine falsa si ciclul se termina.

Exemplu: O varianta de calcul a lui n! ar fi urmatoarea:

# include <stdio.h>

void main (void)

}

Bucle infinite: Una din cele mai interesante utilizari ale ciclului for consta in crearea de bucle infinite. Daca nici una din cele trei expresii care formeaza ciclul for nu sunt precizate, se obtine o bucla fara sfarsit, ca in exemplul urmator in care se considera ca elementul conditie are valoarea adevarat:

for (;;)

printf ('Aceasta bucla va rula la nesfirsit. n ');

Iesirea dintr-o bucla for: Pentru terminarea unei bucle for, chiar si a buclei for(; ;) se foloseste instructiunea break care se plaseaza oriunde in corpul ciclului si determina incheierea imediata a ciclului (la intalnirea acesteia), programul continuandu-se cu instructiunea ce urmeaza dupa instructiunea for.

Exemplu: Acest program va rula pana cand de la tastatura se apasa tasta A:

# include <stdio.h>

# include <ctype.h>

void main (void)

printf (' Ai apasat tasta A '); }

Utilizarea ciclurilor for fara corp (instructiune) : Pentru crearea unor intarzieri de timp se pot folosi cicluri for cu corp vid de forma:

for (t = 0; t < O_ANUMITA_VALOARE; t++);

Observatie: De obicei, instructiunea for este legata de parcurgerea unor structuri de date de tip tablou.





Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 865
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved