În acest tutorial, vom afla despre declarația continue și modul de lucru al acestuia cu bucle cu ajutorul unor exemple.
În programarea computerului, continue
instrucțiunea este utilizată pentru a sări iterația curentă a buclei și controlul programului trece la următoarea iterație.
Sintaxa continue
declarației este:
continue;
Înainte de a afla despre declarația continue, asigurați-vă că știți despre,
- C ++ pentru buclă
- C ++ dacă … altfel
- C ++ while loop
Lucrarea declarației C ++ continue

Exemplul 1: continuați cu bucla for
Într-o for
buclă, continue
omite iterația curentă și fluxul de control sare la update
expresie.
// program to print the value of i #include using namespace std; int main() ( for (int i = 1; i <= 5; i++) ( // condition to continue if (i == 3) ( continue; ) cout << i << endl; ) return 0; )
Ieșire
1 2 4 5
În programul de mai sus, am folosit for
bucla pentru a imprima valoarea lui i în fiecare iterație. Aici, observați codul,
if (i == 3) ( continue; )
Asta înseamnă
- Când i este egal cu
3
,continue
instrucțiunea omite iterația curentă și începe următoarea iterație - Apoi, devine
4
, șicondition
este evaluat din nou. - Prin urmare,
4
și5
sunt tipărite în următoarele două iterații.
Notă : continue
Declarația este utilizată aproape întotdeauna cu declarațiile de luare a deciziilor.
Notă : Instrucțiunea break
termină complet bucla. Cu toate acestea, continue
declarația omite doar iterația curentă.
Exemplul 2: continuați cu bucla while
Într-o while
buclă, continue
omite iterația curentă și fluxul de control al programului sare înapoi la while
condition
.
// program to calculate positive numbers till 50 only // if the user enters a negative number, // that number is skipped from the calculation // negative number -> loop terminate // numbers above 50 -> skip iteration #include using namespace std; int main() ( int sum = 0; int number = 0; while (number>= 0) ( // add all positive numbers sum += number; // take input from the user cout <> number; // continue condition if (number> 50) ( cout << "The number is greater than 50 and won't be calculated." << endl; number = 0; // the value of number is made 0 again continue; ) ) // display the sum cout << "The sum is " << sum << endl; return 0; )
Ieșire
Introduceți un număr: 12 Introduceți un număr: 0 Introduceți un număr: 2 Introduceți un număr: 30 Introduceți un număr: 50 Introduceți un număr: 56 Numărul este mai mare de 50 și nu va fi calculat. Introduceți un număr: 5 Introduceți un număr: -3 Suma este 99
În programul de mai sus, utilizatorul introduce un număr. while
Bucla este folosit pentru a imprima suma totală a numerelor pozitive introduse de către utilizator, atâta timp cât numerele introduse nu sunt mai mari 50
.
Observați utilizarea continue
declarației.
if (number> 50)( continue; )
- Când utilizatorul introduce un număr mai mare decât
50
,continue
instrucțiunea omite iterația curentă. Apoi fluxul de control al programului merge la buclacondition
ofwhile
. - Când utilizatorul introduce un număr mai mic decât
0
, bucla se termină.
Notă : continue
Declarația funcționează în același mod pentru do… while
bucle.
continuați cu bucla imbricată
Când continue
este utilizat cu bucle imbricate, omite iterația curentă a buclei interioare. De exemplu,
// using continue statement inside // nested for loop #include using namespace std; int main() ( int number; int sum = 0; // nested for loops // first loop for (int i = 1; i <= 3; i++) ( // second loop for (int j = 1; j <= 3; j++) ( if (j == 2) ( continue; ) cout << "i = " << i << ", j = " << j << endl; ) ) return 0; )
Ieșire
i = 1, j = 1 i = 1, j = 3 i = 2, j = 1 i = 2, j = 3 i = 3, j = 1 i = 3, j = 3
În programul de mai sus, atunci când continue
instrucțiunea se execută, omite iterația curentă în bucla interioară. Și controlul programului se mută la expresia de actualizare a buclei interioare.
Prin urmare, valoarea j = 2 nu este afișată niciodată în ieșire.