V tomto tutoriálu se pomocí příkladů dozvíme o příkazu continue a jeho práci se smyčkami.
V počítačovém programování se continue
příkaz používá k přeskočení aktuální iterace smyčky a řízení programu přejde na další iteraci.
Syntaxe continue
příkazu je:
continue;
Než se dozvíte o pokračování, ujistěte se, že víte o,
- C ++ pro smyčku
- C ++, pokud … jinak
- C ++ while smyčka
Práce s příkazem C ++ continue
![](https://cdn.wiki-base.com/8512974/c_continue_statement_with_examples.png.webp)
Příklad 1: pokračujte smyčkou for
Ve for
smyčce continue
přeskočí aktuální iteraci a tok řízení přeskočí na update
výraz.
// 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; )
Výstup
1 2 4 5
Ve výše uvedeném programu jsme použili for
smyčku k tisku hodnoty i v každé iteraci. Zde si všimněte kódu,
if (i == 3) ( continue; )
To znamená
- Když je i rovno
3
,continue
příkaz přeskočí aktuální iteraci a spustí další iteraci - Pak se i stane
4
, acondition
je znovu vyhodnocen. - Proto,
4
a5
jsou vytištěny v následujících dvou iteracích.
Poznámka : continue
Výrok se téměř vždy používá s výroky rozhodování.
Poznámka : Příkaz break
smyčku úplně ukončí. Příkaz však continue
přeskočí pouze aktuální iteraci.
Příklad 2: pokračujte smyčkou while
Ve while
smyčce continue
přeskočí aktuální iteraci a řídicí tok programu přeskočí zpět na 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; )
Výstup
Zadejte číslo: 12 Zadejte číslo: 0 Zadejte číslo: 2 Zadejte číslo: 30 Zadejte číslo: 50 Zadejte číslo: 56 Číslo je větší než 50 a nebude se počítat. Zadejte číslo: 5 Zadejte číslo: -3 Součet je 99
Ve výše uvedeném programu uživatel zadá číslo. while
Smyčka se používá pro tisk celkový součet kladných čísel zadaných uživatelem, tak dlouho, dokud zadaná čísla nejsou větší než 50
.
Všimněte si použití continue
prohlášení.
if (number> 50)( continue; )
- Když uživatel zadá číslo větší než
50
,continue
příkaz přeskočí aktuální iteraci. Potom se řízení toku programu jde docondition
ofwhile
smyčky. - Když uživatel zadá číslo menší než
0
, smyčka se ukončí.
Poznámka : Příkaz continue
funguje stejným způsobem pro do… while
smyčky.
pokračujte vnořenou smyčkou
Při continue
použití s vnořenými smyčkami přeskočí aktuální iteraci vnitřní smyčky. Například,
// 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; )
Výstup
i = 1, j = 1 i = 1, j = 3 i = 2, j = 1 i = 2, j = 3 i = 3, j = 1 i = 3, j = 3
Ve výše uvedeném programu při provedení continue
příkazu přeskočí aktuální iteraci ve vnitřní smyčce. A ovládání programu se přesune na aktualizační výraz vnitřní smyčky.
Proto se hodnota j = 2 na výstupu nikdy nezobrazí.