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 continuepříkaz používá k přeskočení aktuální iterace smyčky a řízení programu přejde na další iteraci.
Syntaxe continuepří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
Práce s příkazem continue v C ++
Příklad 1: pokračujte smyčkou for
Ve forsmyčce continuepřeskočí aktuální iteraci a tok řízení přeskočí na updatevý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 forsmyč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,continuepříkaz přeskočí aktuální iteraci a spustí další iteraci - Pak se i stane
4, aconditionje znovu vyhodnocen. - Proto,
4a5jsou vytištěny v následujících dvou iteracích.
Poznámka : continueVýrok se téměř vždy používá s výroky rozhodování.
Poznámka : Příkaz breaksmyčku úplně ukončí. Příkaz však continuepřeskočí pouze aktuální iteraci.
Příklad 2: pokračujte smyčkou while
Ve whilesmyčce continuepř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. whileSmyč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í continueprohlášení.
if (number> 50)( continue; )
- Když uživatel zadá číslo větší než
50,continuepříkaz přeskočí aktuální iteraci. Potom se řízení toku programu jde doconditionofwhilesmyčky. - Když uživatel zadá číslo menší než
0, smyčka se ukončí.
Poznámka : Příkaz continuefunguje stejným způsobem pro do… whilesmyčky.
pokračujte vnořenou smyčkou
Při continuepouž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í continuepří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í.








