C ++ pro smyčku (s příklady)

V tomto tutoriálu se naučíme o smyčce C ++ for a její práci pomocí několika příkladů.

V počítačovém programování se smyčky používají k opakování bloku kódu.

Řekněme například, že chceme zobrazit zprávu stokrát. Pak namísto stokrát psaného tiskového prohlášení můžeme použít smyčku.

To byl jen jednoduchý příklad; efektivnějším využíváním smyček můžeme v našich programech dosáhnout mnohem větší efektivity a propracovanosti.

V C ++ existují 3 typy smyček.

  • for smyčka
  • while smyčka
  • do… while smyčka

Tento kurz se zaměřuje na forsmyčku C ++ . O dalších typech smyček se dozvíme v nadcházejících cvičeních.

C ++ pro smyčku

Syntaxe smyčky for-loop je:

 for (initialization; condition; update) ( // body of-loop )

Tady,

  • initialization - inicializuje proměnné a provede se pouze jednou
  • condition- pokud trueje tělo forsmyčky provedeno,
    pokud falseje smyčka for ukončena
  • update - aktualizuje hodnotu inicializovaných proměnných a znovu zkontroluje stav

Další informace o tom conditionsnajdete v našem kurzu relačních a logických operátorů C ++.

Vývojový diagram pro smyčku v C ++

Vývojový diagram smyčky for v C ++

Příklad 1: Tisk čísel od 1 do 5

 #include using namespace std; int main() ( for (int i = 1; i <= 5; ++i) ( cout << i << " "; ) return 0; )

Výstup

 1 2 3 4 5

Takto funguje tento program

Opakování Variabilní i <= 5 Akce
1. místo i = 1 true 1 je vytištěn. ise zvyšuje na 2.
2. místo i = 2 true 2 je vytištěn. ise zvyšuje na 3.
3. místo i = 3 true 3 je vytištěn. ise zvyšuje na 4.
4. místo i = 4 true 4 je vytištěn. ise zvyšuje na 5.
5 i = 5 true 5 je vytištěn. ise zvyšuje na 6.
6. i = 6 false Smyčka je ukončena

Příklad 2: Zobrazit text 5krát

 // C++ Program to display a text 5 times #include using namespace std; int main() ( for (int i = 1; i <= 5; ++i) ( cout << "Hello World! " << endl; ) return 0; )

Výstup

Ahoj světe! Ahoj světe! Ahoj světe! Ahoj světe! Ahoj světe!

Takto funguje tento program

Opakování Variabilní i <= 5 Akce
1. místo i = 1 true Ahoj světe! je vytištěn a ije zvýšen na 2.
2. místo i = 2 true Ahoj světe! je vytištěn a ije zvýšen na 3.
3. místo i = 3 true Ahoj světe! je vytištěn a ije zvýšen na 4.
4. místo i = 4 true Ahoj světe! je vytištěn a ije zvýšen na 5.
5 i = 5 true Ahoj světe! je vytištěn a ije zvýšen na 6.
6. i = 6 false Smyčka je ukončena

Příklad 3: Najděte součet prvních n přirozených čísel

 // C++ program to find the sum of first n natural numbers // positive integers such as 1,2,3,… n are known as natural numbers #include using namespace std; int main() ( int num, sum; sum = 0; cout <> num; for (int count = 1; count <= num; ++count) ( sum += count; ) cout << "Sum = " << sum << endl; return 0; )

Výstup

 Zadejte kladné celé číslo: 10 Součet = 55

Ve výše uvedeném příkladu máme dvě proměnné num a sum. Proměnné součet je přiřazeno 0 a proměnné num je přiřazena hodnota poskytnutá uživatelem.

Všimněte si, že jsme použili forsmyčku.

 for(int count = 1; count <= num; ++count)

Tady,

  • int count = 1: inicializuje proměnnou count
  • count <= num: spustí smyčku, pokud je počet menší nebo roven num
  • ++count: zvýší proměnnou count o 1 v každé iteraci

When count becomes 11, the condition is false and sum will be equal to 0 + 1 + 2 +… + 10.

Ranged Based for Loop

In C++11, a new range-based for loop was introduced to work with collections such as arrays and vectors. Its syntax is:

 for (variable : collection) ( // body of loop )

Here, for every value in the collection, the for loop is executed and the value is assigned to the variable.

Example 4: Range Based for Loop

 #include using namespace std; int main() ( int num_array() = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10); for (int n : num_array) ( cout << n << " "; ) return 0; )

Output

 1 2 3 4 5 6 7 8 9 10

In the above program, we have declared and initialized an int array named num_array. It has 10 items.

Here, we have used a range-based for loop to access all the items in the array.

C++ Infinite for loop

If the condition in a for loop is always true, it runs forever (until memory is full). For example,

 // infinite for loop for(int i = 1; i> 0; i++) ( // block of code )

Ve výše uvedeném programu, conditionje vždy, truekterý pak spustí kód pro nekonečné časy.

Podívejte se na tyto příklady a dozvíte se více:

  • Program C ++ pro výpočet součtu přirozených čísel
  • Program C ++ pro vyhledání faktoriálu
  • Program C ++ pro generování tabulky násobení

V další lekci budeme seznámí whilea do… whilesmyčky.

Zajímavé články...