Problem mit Konsolen Ausgabe



  • Moin folgendes habe ich geschrieben:

    #include <iostream>
    #include <vector>
    using namespace std;
    
    int main(int argc, char* argv[])
    {
    
    vector<int> ZahlenReihe(2000);
    
    for(int i=0;i< ZahlenReihe.size() ;i++)
    {
    	ZahlenReihe[i] = i;
    }
    
    for(int i=0;i<ZahlenReihe.size();i++)
    {
    	cout<< ZahlenReihe[i] << endl;
    }
    
    system("PAUSE");
    }
    

    Das Programm gibt die Zahlen bis 1999 aus.

    Wenn ich dann in der Konsole hochscrolle lande ich irgendwann bei 1701.
    Wie kann ich mir die restlichen ausgabe auch mit ansehen?

    Ich will halt in der Konsole scrollen können bis ich auch die 0 sehe also die erste Zahl die ich in den Vector geschrieben habe.

    Ich Programmiere gerade unter Windows 7 Pro.



  • Falsches Forum.

    Aber ich denke du suchst sowas hier:

    #include <windows.h> //brauchste dafür
    #include <iostream>
    #include <vector>
    using namespace std;
    
    void vergroessern(int Width, int Height)
    {
        COORD Size;
        Size.X = Width;
        Size.Y = Height;
        SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE), Size);
    }
    
    int main()
    {
        vergroessern(80, 2000); //80 breit(standard), 2000 hoch
        vector<int> ZahlenReihe(2000);
    
        for(unsigned i=0; i< ZahlenReihe.size() ; i++)
        {
            ZahlenReihe[i] = i;
        }
    
        for(unsigned i=0; i<ZahlenReihe.size(); i++)
        {
            cout<< ZahlenReihe[i] << endl;
        }
    
        system("PAUSE");
    }
    

    siehe hier.

    EDIT: Achja, ein

    cout<< ZahlenReihe[i] << ' ';
    

    würde dein "Problem" ja eigentlich auch lösen 😉



  • Danke für die Antwort genau sowas habe ich gesucht.

    Angenommen die Vector größe wird erst zur Programmlaufzeit festgelegt dann kann ich die passende größe für die Konsole doch so ermitteln:

    Lese Zeilen aus einer Datei, speicher die Anzahl der Zeilen in der Variable: row_count
    
    vector<int> ZahlenReihe(row_count);
    vergroessern(ZahlenReihe.size()/10 , ZahlenReihe.size() ); //80 breit(standard), 2000 hoch
    

    Oder ist das ehr schlecht das so zu machen?


Anmelden zum Antworten