CATEGORII DOCUMENTE |
Instructiunea while
Forma generala a instructiunii repetitive while este:
while (conditie)
instructiune;
unde instructiune poate fi o instructiune vida, o instructiune simpla sau un bloc de instructiuni ce vor fi executate repetitiv. In timpul executiei se evalueaza mai intai conditia buclei a carei valoare trebuie sa fie intreaga. Daca valoarea calculata este diferita de 0 (conditie adevarata), atunci instructiune se executa. Daca, dupa o evaluare (inclusiv prima) rezulta o valoare 0 (conditie falsa), atunci controlul este transferat la instructiunea ce urmeaza dupa while. Astfel, instructiunea asociata cu while se executa repetat, cat timp valoarea asociata conditiei este diferita de 0 sau conditia este adevarata.
Exemplu: Programul urmator calculeaza c.m.m.d.c. pentru o pereche x, y de numere intregi pozitive.
# include <stdio.h>
void main (void)
Metoda de calcul se bazeaza pe faptul ca:
daca x > y, atunci cmmdc (x, y) = cmmdc (x-y, x);
daca x < y, atunci cmmdc (x, y) = cmmdc (x, y-x);
daca x = y, atunci cmmdc (x, y) = x =y .
De exemplu, cmmdc (14, 21) = 7.
Deoarece instructiunea while realizeaza testarea conditiei la inceputul instructiunii, aceasta instructiune este buna de utilizat in situatiile in care nu se doreste executia buclei, evident daca conditia nu este adevarata.
Exemplu: Programul urmator realizeaza centrarea unui text pe ecran:
# include <stdio.h>
# include <ctype.h>
void main (void)
/* Se calculeaza numarul de spatii pentru centrarea unui sir de
caractere cu lungimea lung */
centreaza (lung)
int lung;
}
Daca dorim sa programam un ciclu infinit, atunci se poate gasi o expresie care ramane tot timpul adevarata. Un exemplu uzual este urmatorul:
while (1)
Iesirea din ciclu, in acest caz, se asigura prin mecanisme de tip break, goto sau return.
Corpul ciclului while poate contine si numai instructiunea vida. De exemplu,
while ((ch = getche ()) != 'A');
este o bucla simpla care se executa pana cand de la tastatura se va introduce caracterul 'A'.
Observatie: Instructiunea while reprezinta mecanismul sintactic de baza pentru a programa cicluri in C.
Reamintim ca instructiunea for se foloseste dupa urmatorul format general:
for (initializare; conditie; incrementare) instructiune;
care este echivalenta semantic cu secventa:
initializare;
while (conditie)
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 791
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved