Instrucțiuni repetitive și decizionale
Instrucțiunea do-while este similară cu while, dar garantează că blocul de cod se execută cel puțin o dată:
do {
n = n/10; // elimină ultima cifră din n
k++; // număr cifre
} while (n != 0);
Această structură este ideală când ai nevoie să execuți codul cel puțin o dată, înainte de a verifica condiția.
Instrucțiunea for este o structură compactă pentru repetiții, care combină inițializarea, testul și incrementarea într-o singură linie:
for (i=1; i<=n; i++)
fact = fact * i;
💡 Pentru calculul factorialului, instrucțiunea for este mult mai elegantă decât while, deoarece toate operațiile necesare sunt în antet!
Orice expresie din for poate fi vidă, dar separatorii ; trebuie păstrați. De exemplu:
for (;;) {
cin >> x;
if (x > 0) break;
}
Acest cod citește numere până când întâlnește unul pozitiv.
Instrucțiunea break termină execuția celei mai apropiate structuri repetitive în care se află. Este utilă pentru a ieși dintr-un ciclu când întâlnești o anumită condiție.
Calcul numeric: Poți rezolva probleme simple dar importante cu aceste instrucțiuni. De exemplu, pentru calculul modulului unui număr:
if (x >= 0)
m = x;
else
m = -x;
Pentru a verifica paritatea unui număr:
if (x % 2 == 0)
printf("%d este par\n", x);
else
printf("%d este impar\n", x);