Array in bestimmter Form ausgeben

  • C++

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Array in bestimmter Form ausgeben

    hi leute,

    ich möchte folgenden code so ausgeben:

    *****
    *****
    *****
    *****
    *****
    *****
    also den Array in 6 zeilen a 5 spalten!

    Quellcode

    1. #include <iostream>
    2. using namespace std;
    3. int fibRek(int n)
    4. {
    5. if(n==1)
    6. return 1;
    7. else if(n==2)
    8. return 1;
    9. else
    10. return fibRek(n-1)+fibRek(n-2);
    11. };
    12. int main(void){
    13. int i;
    14. int f = 1;
    15. int *fib = new int [30];
    16. for(i=0;i<30;i++){
    17. fib[i]=fibRek(f);
    18. f++;
    19. }
    20. for(i=0;i<30;i++){
    21. cout <<fib[i]<<" ";
    22. }
    23. return 0;
    24. }
    Alles anzeigen


    Wie bekomme ich das hin? Wäre für jede Hilfe danbar!!

    Danke
  • Hi,
    Du musst

    Quellcode

    1. for(i=0;i<30;i++){
    2. cout <<fib[i]<<" ";
    3. }


    entweder durch

    Quellcode

    1. for(i = 0; LOWORD(i) < 6; i++) for(; HIWORD(i) < (LOWORD(i) + 1) * 5; i += 65536) if(cout << fib[LOWORD(i) * 5 + (HIWORD(i) % 5)] << " " && HIWORD(i) % 5 == 4) cout << endl;


    oder durch

    Quellcode

    1. for(i = 0; i < 6; i++){
    2. for(int j = 0; j < 5; j++) cout << fib[i * 5 + j] << " ";
    3. cout << endl;
    4. }


    ersetzen ;)
    Grüße, Cobi
  • Wie schon durch Cobi angegeben, ist die Idee einfach: du musst nur mitzählen, wieviele Werte ausgegeben wurden und alle 5 Werte einen Zeilenumbruch in die Ausgabe einstreuen.

    Die Konstante endl erzeugt genau diesen Umbruch und sorgt durch einen flush auf den Ausgabestrom auch noch dafür, dass die Ausgabe sofort auf dem Bildschirm erscheint. Alternativ geht auch cout << "\n";
    Aber endl zu verwenden ist sauberer.

    Wenn du später mal nicht mehr mit "einfachen" Arrays arbeitest sondern die dafür in C++ existierenden Container verwendest, dann werden solche Aufgaben etwas leichter. Aber das sind die fortgeschrittenen Weihen von C++ (Templates und Vererbung).