Menu
Coddy logo textTech

Iterieren mit einer For-Schleife

Teil des Abschnitts Logik & Ablauf der C++-Journey von Coddy — Lektion 14 von 56.

Nachdem Sie nun wissen, wie Sie auf einzelne Elemente zugreifen und die Größe eines Vektors überprüfen können, lernen wir nun, wie man jedes Element systematisch mit einer herkömmlichen for-Schleife verarbeitet. Dieser Ansatz kombiniert die .size()-Methode mit indexbasiertem Zugriff, um jedes Element nacheinander zu besuchen.

Eine traditionelle for-Schleife verwendet eine Indexvariable, die bei 0 beginnt und inkrementiert wird, bis sie die Größe des Vektors erreicht:

std::vector<std::string> names = {"Alice", "Bob", "Charlie"};

for (int i = 0; i < names.size(); i++) {
    std::cout << names[i] << std::endl;
}

In diesem Beispiel stellt die Schleifenbedingung i < names.size() sicher, dass wir nicht über die Grenzen des Vektors hinausgehen, während names[i] mit dem aktuellen Index auf jedes Element zugreift. Die Schleife gibt jeden Namen in einer separaten Zeile aus.

Dieses Muster ist grundlegend für die Verarbeitung von Datensammlungen. Die Indexvariable i gibt Ihnen eine präzise Kontrolle darüber, mit welchem Element Sie gerade arbeiten, was es nützlich macht, wenn Sie die Position jedes Elements kennen müssen oder wenn Sie Elemente während der Iteration ändern möchten.

Beachten Sie, dass nach Abschluss der Schleife i gleich names.size() ist — in diesem Fall 3 — da die Schleife stoppt, sobald die Bedingung i < names.size() falsch wird.

challenge icon

Aufgabe

Einfach

Erstellen Sie ein Programm, das eine traditionelle for-Schleife verwendet, um einen Vektor von Produktnamen zu durchlaufen und diese in einem nummerierten Listenformat anzuzeigen.

Die folgenden Eingaben werden bereitgestellt:

  • Eine Ganzzahl n, die die Anzahl der Produkte darstellt
  • Anschließend n Zeichenfolgen, die Produktnamen darstellen

Ihr Programm sollte:

  1. Einen std::vector<std::string> namens products erstellen
  2. push_back() verwenden, um jeden der n Produktnamen zum Vektor hinzuzufügen
  3. Eine traditionelle for-Schleife mit einer Indexvariable verwenden, um den Vektor zu durchlaufen
  4. In der Schleife die Methode .size() für die Schleifenbedingung verwenden
  5. Den eckigen Klammeroperator [] verwenden, um auf jedes Element über den Index zuzugreifen
  6. Jedes Produkt mit seiner Positionsnummer (beginnend bei 1) im angegebenen Format ausgeben

Verwenden Sie das folgende exakte Ausgabeformat:

Product 1: [first product name]
Product 2: [second product name]
Product 3: [third product name]
...

Die for-Schleife sollte mit Index 0 beginnen, i < products.size() als Bedingung verwenden und i in jeder Iteration inkrementieren. Addieren Sie bei der Ausgabe 1 zum Index, um Positionsnummern beginnend bei 1 anzuzeigen.

Probier es selbst

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

int main() {
    // Lies die Anzahl der Produkte
    int n;
    cin >> n;
    
    // Erstelle einen Vektor, um Produktnamen zu speichern
    vector<string> products;
    
    // Lies Produktnamen und füge sie dem Vektor hinzu
    for (int i = 0; i < n; i++) {
        string product;
        cin >> product;
        products.push_back(product);
    }
    
    // TODO: Schreibe deinen Code unten
    // Verwende eine traditionelle for-Schleife, um durch den Vektor zu iterieren
    // und gib jedes Produkt mit seiner Positionsnummer aus
    
    return 0;
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf