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čkawhile
smyčkado… while
smyčka
Tento kurz se zaměřuje na for
smyč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 jednoucondition
- pokudtrue
je tělofor
smyčky provedeno,
pokudfalse
je smyčka for ukončenaupdate
- aktualizuje hodnotu inicializovaných proměnných a znovu zkontroluje stav
Další informace o tom conditions
najdete v našem kurzu relačních a logických operátorů C ++.
Vývojový diagram pro smyčku v C ++
![](https://cdn.wiki-base.com/7425629/c_for_loop_with_examples.png.webp)
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. i se zvyšuje na 2 . |
2. místo | i = 2 | true | 2 je vytištěn. i se zvyšuje na 3 . |
3. místo | i = 3 | true | 3 je vytištěn. i se zvyšuje na 4 . |
4. místo | i = 4 | true | 4 je vytištěn. i se zvyšuje na 5 . |
5 | i = 5 | true | 5 je vytištěn. i se 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 i je zvýšen na 2 . |
2. místo | i = 2 | true | Ahoj světe! je vytištěn a i je zvýšen na 3 . |
3. místo | i = 3 | true | Ahoj světe! je vytištěn a i je zvýšen na 4 . |
4. místo | i = 4 | true | Ahoj světe! je vytištěn a i je zvýšen na 5 . |
5 | i = 5 | true | Ahoj světe! je vytištěn a i je 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 for
smyčku.
for(int count = 1; count <= num; ++count)
Tady,
int count = 1
: inicializuje proměnnou countcount <= 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, condition
je vždy, true
který 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í while
a do… while
smyčky.