Ce este For Loop?
Aceasta este o structură de control al repetării care ne ajută să repetați o secțiune de cod C ++ pentru un număr fix de ori. A pentru bucle rulează cu condiția ca expresia de test să fie adevărată. Bucla termină execuția imediat, expresia testului devine falsă. Aceasta înseamnă că înainte de execuția corpului buclei în fiecare iterație, condiția trebuie evaluată. Dacă evaluarea returnează un adevărat, corpul buclei este executat. Dacă evaluarea returnează un fals, execuția corpului buclei este încheiată.
În acest tutorial C ++, veți învăța:
- Ce este For Loop?
- Cum funcționează bucla?
- Când se folosește o buclă for?
- Sintaxa buclei for
- Exemplul 1
- Exemplul 2
Cum funcționează bucla?
Bucla for funcționează după cum urmează:
Diagrama de flux Explicație:
- Compilatorul de limbaj C ++ începe prin evaluarea inițializării. Acest lucru se face o singură dată când începe execuția.
- Expresia testului este evaluată / executată.
- Dacă expresia test este adevărată, corpul buclei este executat și expresia test este actualizată. Dacă expresia devine falsă, bucla for se termină.
- După executarea expresiei de test, incrementul este executat pentru a crește valoarea variabilei de control buclă.
- Expresia testului este evaluată din nou și procesul continuă până când expresia devine falsă.
- Dacă exorerația este falsă, instrucțiunile corpului buclei sunt omise.
Notă : expresia testului este actualizată după fiecare iterație. Aceasta înseamnă că diferite valori ale variabilei de control buclă sunt executate în fiecare iterație.
Când se folosește o buclă for?
Bucla for trebuie utilizată atunci când:
- Aveți un număr fix de iterații.
- Știți numărul exact de iterații.
Sintaxa buclei for
Iată sintaxa pentru bucla for:
for ( initialization;condition;increment ) {statement(s);}
Iată o explicație a parametrilor de mai sus:
- Inițializare: această parte este executată prima și o singură dată. Aici, declarați și inițializați variabilele de control ale buclei. Variabilele de control buclă pot fi mai multe decât una, iar valorile lor se vor schimba după fiecare iterație. Cu toate acestea, valorile lor trebuie evaluate înainte de executarea unei iterații.
- Condiție: Această parte este executată în continuare. Pentru ca corpul buclei să fie executat, această condiție trebuie să fie adevărată. Dacă condiția este falsă, execuția va trece la instrucțiunile imediat după corpul buclei. Dacă condiția este falsă la prima evaluare, corpul buclei nu va fi executat niciodată.
- Increment: Odată ce corpul buclei a fost executat, controlul sare la increment. Puteți lăsa această parte și puteți folosi un punct și virgulă.
- Din nou, starea este evaluată. Dacă este adevărat, corpul buclei este executat și acest lucru continuă. Bucla se termină imediat condiția devine falsă.
Exemplul 1
#includeusing namespace std;int main() {for (int x=0; x<5; x=x+1) {cout << "X is: " << x << endl;}return 0;}
Ieșire:
Iată o captură de ecran a codului:
Explicatie cod:
- Includerea fișierului antet iostream în codul nostru. Ne va permite să citim și să scriem pe consolă.
- Includerea spațiului de nume std pentru a-și folosi clasele și funcțiile fără a-l apela.
- Apelarea funcției main () în cadrul căreia ar trebui adăugată logica programului. {Marchează începutul corpului funcției main ().
- Crearea unei bucle for. Inițializarea creează o variabilă întreagă x și îi atribuie o valoare de 0. Condiția afirmă că valoarea lui x trebuie să fie mai mică de 5. Incrementul crește valoarea lui x cu 1 după fiecare iterație. {Marchează începutul corpului buclei for.
- Pentru a imprima valoarea variabilei x alături de alt text de pe consolă. Endl este un cuvânt cheie C ++ care înseamnă linie finală. Cursorul se va imprima în următoarea linie în următoarea iterație.
- Sfârșitul corpului buclei.
- Funcția main () ar trebui să returneze o valoare dacă programul rulează bine.
- Sfârșitul corpului funcției main ().
Exemplul 2
#includeusing namespace std;int main(){int x, num, factorial = 1;cout << "Type positive number: ";cin>> num;for (x = 1; x <= num; ++x) {factorial *= x; // factorial = factorial * x;}cout << "Factorial of " << num << " = " << factorial;return 0;}
Ieșire:
Iată o captură de ecran a codului:
Explicatie cod:
- Includerea fișierului antet iostream în codul nostru. Ne va permite să citim și să scriem pe consolă.
- Includerea spațiului de nume std pentru a-și folosi clasele și funcțiile fără a-l apela.
- Apelarea funcției main () în cadrul căreia ar trebui adăugată logica programului.
- {Marchează începutul corpului funcției main ().
- Declararea variabilelor întregi, x, num și factorială. Variabilei factoriale i s-a atribuit o valoare de 1.
- Tipărirea unui text pe consolă.
- Solicitând utilizatorului să introducă o valoare pentru variabila num.
- Crearea unei bucle for. Inițializarea creează o variabilă întreagă x și îi atribuie o valoare 1. Condiția afirmă că valoarea lui x trebuie să fie mai mică sau egală cu valoarea variabilei num. Incrementul crește valoarea lui x cu 1 după fiecare iterație. {Marchează începutul corpului buclei for.
- Calculul valorii factorialului utilizând formula factorial = factorial * x.
- Sfârșitul corpului buclei.
- Pentru a imprima valoarea variabilelor num și factorial alături de alt text de pe consolă.
- Funcția main () ar trebui să returneze o valoare dacă programul rulează bine.
- Sfârșitul corpului funcției main ().
rezumat
- Bucla for itera o secțiune de cod C ++ de un număr fix de ori.
- Bucla for rulează atât timp cât condiția de testare este adevărată.
- Partea de inițializare a buclei for este pentru declararea și inițializarea oricăror variabile de control de buclă.
- Condiția pentru bucla for trebuie să fie adevărată pentru ca corpul buclei să fie executat.
- Partea incrementală a buclei for poate fi înlocuită cu un punct și virgulă.