Zellen/Spaltenformatierung in C



  • Hallo, habe folgendes Programm geschrieben:
    int feld[10000];
    int zaehler, startwert;

    /* Alle Elemente im Feld auf 1 setzen (Annahme: jede Zahl ist
    eine Primzahl!) */
    for ( zaehler=0; zaehler<10000; zaehler++ )
    feld[zaehler]=1;

    /* Die null und eins loeschen, die sind Ausnahmen */
    feld[0]=0; feld[1]=0;

    do {

    /* Startwert auf die naechste nicht-null setzen */
    for( startwert=0; feld[startwert]==0; startwert++ )
    ;

    /* Wenn das Feld nun auf 1 steht, ausgeben! */
    if (feld[startwert]==1)
    printf("%5d", startwert);

    /* Und alle Vielfachen loeschen */
    for ( zaehler=startwert; zaehler<10000; zaehler+=startwert ) {
    /* Feld zuruecksetzen */
    feld[zaehler]=0;
    }

    } while( startwert < 10000 );

    Wie kann ich in diesem Programm die Zeilenanzahl auf 80 und die Spaltenanzahl auf 10 begrenzen? KAnn mir da jemand helfen?



  • Was für Zeilen und Spalten willst du begrenzen? Bildschirmausgabe?



  • Ja, das gilt für die Bildschirmausgabe.



  • Musst halt an der richtigen Stelle nen Zeilenumbruch "\n" ausgeben .



  • Das Programm soll ja die Primzahlen bis 10000 ausgeben. Wie kann ich denn da im Vorfeld die Begrenzung auf 80 Zeilen und 10 Spalten eingeben?



  • Na die Konsole kannst du nicht ändern. Wenn du 10 spalten willst, dann musst du es halt so ausgeben



  • Hi, ich würde deine Primzahlen in einer Funktion berechnen lassen.
    Die Ausgabe würde ich getrennt davon machen.(Also nicht in der gleichen Funktion)

    würde dann ungefähr so aussehen.

    main()
    {
    Primzahl ( );

    for ( i=0 ; i<=10000 ; i++) //Schleife für die Ausgabe
    {
    if (Feld[i]== 0) // Falls das i te Feld 0 ist gib den Index aus
    {
    cout.width(6); //rechtsbündig und Feld mit 6 Ziffern breite
    cout << i; //nur die nächste Zeile gilt. Also diese hier
    k++;
    if ( k==10 ) // für neue Zeile
    {
    cout <<endl; // nächste Zeile
    k=0; // k zählt jetzt dann wieder von vorne
    }
    anzahl++; // Zähler für anzahl der Primzahlen
    }
    }

    }


Anmelden zum Antworten