Tässä opetusohjelmassa opitaan C ++ -silmukasta ja sen toiminnasta joidenkin esimerkkien avulla.
Tietokoneohjelmoinnissa silmukoita käytetään toistamaan koodilohko.
Oletetaan esimerkiksi, että haluamme näyttää viestin 100 kertaa. Sitten voimme käyttää silmukkaa sen sijaan, että kirjoittaisimme tulostuslausekkeen 100 kertaa.
Se oli vain yksinkertainen esimerkki; voimme saavuttaa paljon enemmän tehokkuutta ja hienostuneisuutta ohjelmissamme käyttämällä silmukoita tehokkaasti.
C ++: ssa on 3 tyyppistä silmukkaa.
for
silmukkawhile
silmukkado… while
silmukka
Tämä opetusohjelma keskittyy C ++ for
-silmukkaan. Opimme muun tyyppisistä silmukoista tulevissa opetusohjelmissa.
C ++ silmukalle
For-loop -syntaksi on:
for (initialization; condition; update) ( // body of-loop )
Tässä,
initialization
- alustaa muuttujat ja suoritetaan vain kerrancondition
- iftrue
,for
silmukan runko suoritetaan
josfalse
for-silmukka lopetetaanupdate
- päivittää alustettujen muuttujien arvon ja tarkistaa ehdon uudelleen
Saat lisätietoja conditions
tutustumalla C ++ Relation and Logical Operators -oppaaseen.
Vuokaavio silmukasta C ++: ssa

Esimerkki 1: Numeroiden tulostaminen 1: stä 5: een
#include using namespace std; int main() ( for (int i = 1; i <= 5; ++i) ( cout << i << " "; ) return 0; )
Tuotos
1 2 3 4 5
Näin tämä ohjelma toimii
Toisto | Vaihteleva | i <= 5 | Toiminta |
---|---|---|---|
1 | i = 1 | true | 1 on tulostettu. i on korotettu arvoon 2 . |
2. | i = 2 | true | 2 on tulostettu. i on korotettu arvoon 3 . |
3. | i = 3 | true | 3 on tulostettu. i on korotettu arvoon 4 . |
4. päivä | i = 4 | true | 4 on tulostettu. i on korotettu arvoon 5 . |
5. | i = 5 | true | 5 on tulostettu. i on korotettu arvoon 6 . |
6. | i = 6 | false | Silmukka on päättynyt |
Esimerkki 2: Näytä teksti viisi kertaa
// 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; )
Tuotos
Hei maailma! Hei maailma! Hei maailma! Hei maailma! Hei maailma!
Näin tämä ohjelma toimii
Toisto | Vaihteleva | i <= 5 | Toiminta |
---|---|---|---|
1 | i = 1 | true | Hei maailma! tulostetaan ja i korotetaan 2 . |
2. | i = 2 | true | Hei maailma! tulostetaan ja i korotetaan 3 . |
3. | i = 3 | true | Hei maailma! tulostetaan ja i korotetaan 4 . |
4. päivä | i = 4 | true | Hei maailma! tulostetaan ja i korotetaan 5 . |
5. | i = 5 | true | Hei maailma! tulostetaan ja i korotetaan 6 . |
6. | i = 6 | false | Silmukka on päättynyt |
Esimerkki 3: Etsi ensimmäisen n luonnollisen luvun summa
// 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; )
Tuotos
Syötä positiivinen kokonaisluku: 10 Summa = 55
Yllä olevassa esimerkissä meillä on kaksi muuttujaa num ja summa. Summa-muuttujalle annetaan 0 ja numeromuuttujalle käyttäjän antama arvo.
Huomaa, että olemme käyttäneet for
silmukkaa.
for(int count = 1; count <= num; ++count)
Tässä,
int count = 1
: alustaa laskentamuuttujancount <= num
: suorittaa silmukan niin kauan kuin määrä on pienempi tai yhtä suuri kuin numero++count
: lisää laskentamuuttujaa yhdellä kussakin iteraatiossa
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 )
Yllä olevassa ohjelmassa a condition
on aina se, true
joka suorittaa koodin loputtomasti.
Katso nämä esimerkit saadaksesi lisätietoja:
- C ++ -ohjelma luonnollisten numeroiden summan laskemiseksi
- C ++ -ohjelma Factorialin löytämiseksi
- C ++ -ohjelma kertotaulukon luomiseksi
Seuraavassa opetusohjelmassa opitaan while
ja do… while
silmukka.