Kurs C++: Pętle i Iteracje

Pętle w C++ (szczególnie for, while oraz range-based for) są doskonałym narzędziem do iterowania po liczbach oraz elementach tablic i innych struktur danych. Pozwala to na szybkie i efektywne przetwarzanie danych.

 


 

1. Iterowanie po liczbach – pętla for

 

Pętla for jest najczęściej używana do iteracji po liczbach, zwłaszcza gdy znamy liczbę kroków.

 

Przykład: Iterowanie po liczbach od 1 do 10

 

 

 

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 10; i++) {
        cout << i << " ";
    }
    return 0;
}

 

 

 

Wynik: 1 2 3 4 5 6 7 8 9 10

 

 

 

Przykład: Iterowanie co 2 (skok większy niż 1)

 

 

 

#include <iostream>
using namespace std;

int main() {
    for (int i = 0; i <= 20; i += 2) {
        cout << i << " ";
    }
    return 0;
}

 

 

 

Wynik: 0 2 4 6 8 10 12 14 16 18 20

 

 

 

Przykład: Iterowanie wstecz

 

 

 

#include <iostream>
using namespace std;

int main() {
    for (int i = 10; i >= 1; i--) {
        cout << i << " ";
    }
    return 0;
}

 

 

 

Wynik: 10 9 8 7 6 5 4 3 2 1

 

 

 

2. Iterowanie po tablicach – pętla for

 

Tablice w C++ to struktury danych przechowujące wiele elementów tego samego typu. Możemy je łatwo przetwarzać za pomocą pętli.

 

Przykład: Iterowanie po tablicy

 

 

 

#include <iostream>
using namespace std;

int main() {
    int liczby[] = {5, 10, 15, 20, 25};

    for (int i = 0; i < 5; i++) {
        cout << "Element " << i << ": " << liczby[i] << endl;
    }

    return 0;
}

 

 

 

Wynik:

 

 

 

Element 0: 5  
Element 1: 10  
Element 2: 15  
Element 3: 20  
Element 4: 25  

 

 

 

Przykład: Iterowanie po tablicy znaków (ciąg tekstowy)

 

 

 

#include <iostream>
using namespace std;

int main() {
    char tekst[] = "C++ jest super!";

    for (int i = 0; tekst[i] != ''; i++) {
        cout << tekst[i] << " ";
    }

    return 0;
}

 

 

 

Wynik:

 

 

 

C + +   j e s t   s u p e r !

 

 

 

3. Iterowanie po tablicach – pętla range-based for (C++11+)

 

Pętla range-based for pozwala na wygodne iterowanie po elementach tablic i kontenerów, bez konieczności zarządzania indeksem.

 

Przykład: Iterowanie po tablicy za pomocą range-based for

 

 

 

#include <iostream>
using namespace std;

int main() {
    int liczby[] = {3, 6, 9, 12, 15};

    for (int liczba : liczby) {
        cout << liczba << " ";
    }

    return 0;
}

 

Wynik: 3 6 9 12 15

 

 

 

Przykład: Iterowanie po tablicy znaków (ciąg tekstowy)

 

 

 

#include <iostream>
using namespace std;

int main() {
    string tekst = "C++";

    for (char znak : tekst) {
        cout << znak << " ";
    }

    return 0;
}

 

Wynik: C + +

 

 

 

4. Iterowanie po dynamicznych strukturach danych (np. wektory)

 

Pętla range-based for jest również bardzo wygodna w przypadku wektorów z biblioteki <vector>.

 

Przykład: Iterowanie po wektorze

 

 

 

#include <iostream>
#include <vector>
using namespace std;

int main() {
    vector<int> liczby = {100, 200, 300, 400, 500};

    for (int liczba : liczby) {
        cout << liczba << " ";
    }

    return 0;
}

 

Wynik: 100 200 300 400 500

 

 

 

5. Podsumowanie

 

✅ Pętla for idealnie nadaje się do iteracji po liczbach.
✅ Pętla range-based for jest wygodnym sposobem iterowania po tablicach i kontenerach w C++11+.
✅ Przy tablicach znakowych należy pamiętać o znaku '' kończącym tekst.
✅ Iterowanie z różnymi krokami (np. i += 2) pozwala na elastyczne manipulowanie danymi.