Schleife mit Spalten



  • Hallo,

    leider bin ich in Sachen C++ ein blutiger Anfänger. Mein Lehrer hätte aber gerne eine Konsolenanwendung, in der alle geraden Zahlen von 0 - 100 in 5 Spalten ausgegeben werden.

    Also in etwa so:

    2....4....6....8....10
    12..14..16..18..20
    ...

    (Punkte nur hier damit es schön untereinander steht)

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        for (int i = 1; i <= 100; i++)
        {
            for(int spalte = 1; spalte <= 5; spalte++)
            {
                if(i%2 == 0)
                {
                    cout << i << "\t";
                }
            }
            cout << endl;
        }
        return 0;
    }
    

    Wie gesagt, ich bin noch ziemlich neu und habe mir das mal aus verschiedensten Tipps aus Foren zusammengebastelt.

    Wie man sieht bekomme ich zwar die 5 Spalten hin, aber es stehen immer 5 gleiche Werte nebeneinander, also:

    2 2 2 2 2
    4 4 4 4 4
    ...

    Könnt ihr mir helfen, dass das Programm die Zahlen so ausgibt, wie oben beschrieben?

    Vielen Dank im Voraus.

    LG prevo


  • Mod

    Warum das nicht funktioniert, ist dir klar, oder?

    Besserer Ansatz: Mach nur eine Schleife von 0 bis 100 (und gleich in Zweierschritten). Gib die Zahlen einfach nacheinander aus. Wenn die Zahl durch 10 teilbar ist, gibst du zusätzlich noch einen Zeilenumbruch aus.

    Oder etwas allgemeiner (so dass es mit allen Arten von Daten funktioniert, nicht nur 2, 4, 6, ...): Mach einen Zähler. Mach eine Schleife. Gib deine Daten nacheinander aus, erhöhe jedes Mal den Zähler. Ist der Zähler bei 5 angekommen, dann gib einen Zeilenumbruch aus und setz den Zähler zurück auf 0.


Log in to reply