Menu
Coddy logo textTech

Iterieren mit einer For-Schleife

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

Nachdem du nun weißt, wie du auf einzelne Elemente zugreifst und die Größe eines Vektors überprüfst, lernen wir jetzt, wie du jedes Element systematisch mithilfe einer traditionellen for-Schleife verarbeitest. Dieser Ansatz kombiniert die Methode .size() mit dem indexbasierten Zugriff, um jedes Element der Reihe nach aufzurufen.

Eine traditionelle for-Schleife verwendet eine Indexvariable, die bei 0 beginnt und so lange erhöht 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] mithilfe des 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 dir präzise Kontrolle darüber, mit welchem Element du arbeitest, und ist daher nützlich, wenn du die Position jedes Elements kennen musst oder Elemente während der Iteration ändern möchtest.

Beachte, dass nach Beendigung der Schleife i gleich names.size() ist, in diesem Fall 3, weil die Schleife stoppt, sobald die Bedingung i < names.size() falsch wird.

challenge icon

Aufgabe

Einfach

Erstelle ein Programm, das eine traditionelle for-Schleife verwendet, um einen Vektor mit Produktnamen zu durchlaufen und sie in Form einer nummerierten Liste anzuzeigen.

Die folgenden Eingaben werden bereitgestellt:

  • Eine Ganzzahl n, die die Anzahl der Produkte angibt
  • Anschließend n Zeichenketten, die Produktnamen darstellen

Dein 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 Indexvariablen verwenden, um den Vektor zu durchlaufen
  4. In der Schleife die .size()-Methode für die Schleifenbedingung verwenden
  5. Den Operator für eckige Klammern [] verwenden, um auf jedes Element über seinen Index zuzugreifen
  6. Jedes Produkt mit seiner Positionsnummer (beginnend bei 1) im angegebenen Format ausgeben

Verwende das folgende exakte Ausgabeformat:

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

Die for-Schleife sollte mit dem Index 0 beginnen, i < products.size() als Bedingung verwenden und i in jeder Iteration erhöhen. Addiere bei der Ausgabe 1 zum Index, um Positionsnummern ab 1 anzuzeigen.

Probier es selbst

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

int main() {
    // Lese die Anzahl der Produkte
    int n;
    cin >> n;
    
    // Erstelle einen Vektor, um Produktnamen zu speichern
    vector<string> products;
    
    // Lese 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 darunter
    // 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

Übe selbstständig: Online-C++-Compiler