Programm funzt nicht :(



  • Heyo,

    ich bin noch in der Lernphase und habe versucht ein Programm zu schreiben, dass einfach die Punkte und Tore für ein Fußballspiel zählen lässt.

    Beim kompilieren bekomme ich immer diesen Fehler:

    "variable or field `punkte' declared void"

    Ich weiß nicht wie ich das Problem lösen kann... wisst ihr was am Code falsch ist?

    //13.7 array 13

    #include <stdio.h>
    #include <stdlib.h>

    #define SPIELE 5
    #define WIN 3
    #define LOSE 0
    #define GLEICH 1

    //Punkte zählen
    void punkte (dortmund[], bayern[], int count)
    {
    if dortmund[count] > bayern[count]
    {
    dortmund[count] = WIN;
    bayern[count] = LOSE;
    }

    if else dortmund[count] < bayern[count]
    {
    dortmund[count] = LOSE;
    bayern[count] = WIN;
    }

    if else dortmund[count] = bayern[count]
    {
    dortmund[count] = GLEICH;
    bayern[count] = GLEICH;
    }
    }

    int main (void)
    {
    int count=0;
    int tor1, tor2;
    int dortmund[count];
    int bayern[count];
    int tmptor1=0;
    int tmptor2=0;
    int punktebayern=0;
    int punktedortmund=0;

    // printf ("Punkterechner\n");
    while (spiele != count)
    {
    printf ("Bitte geben Sie die Tore fuer das %d. Spiel ein\n",count+1);
    printf ("Bayern: \n");
    scanf ("%d",&tor1);
    printf ("Dortmund: \n");
    scanf ("%d",&tor2);
    bayern[count] = tor1;
    dortmund[count] = tor2;

    //Tore addieren
    tmptor1 = bayern[count]+tmptor[1];
    tmptor2 = dortmund[count]+tmptor[2];

    //Ergebnis in Funktion Punkterechner einsetzen
    punkte (bayern, dortmund, count);
    punktebayern = punktebayern + bayern[count];
    punktedortmund = punktedortmund + dortmund[count];
    count ++
    }

    //Wertebilanz ausgeben
    printf ("Tore Bayern: %d\n", tmptor1);
    printf ("Tore Muenchen: %d\n", tmptor2);
    printf ("Punkte Bayern: %d\n", punktebayern);
    printf ("Puntke Muenchen: %d\n", punktemuenchen);

    getchar();
    return 0;
    }

    Greez

    Haimi



  • Ich hab sicher nicht alles komentiert.
    Kommentare im Quelltext.

    #include <stdio.h>
    #include <stdlib.h>
    
    #define SPIELE 5
    #define WIN 3
    #define LOSE 0
    #define GLEICH 1
    
    //Punkte zählen
    void punkte (dortmund[], bayern[], int count)  //  du sollst hier Dortmund + Bayern declarieren
    {
        if dortmund[count] > bayern[count]
        {
            dortmund[count] = WIN;
            bayern[count] = LOSE;
        }
    
        if else dortmund[count] < bayern[count]
                {
                    dortmund[count] = LOSE;
                    bayern[count] = WIN;
                }
    
                if else dortmund[count] = bayern[count]
                                                  {
                                                      dortmund[count] = GLEICH;
                                                      bayern[count] = GLEICH;
                                                  }
                                              }
    
                              int main (void)
    {
        int count=0;
        int tor1, tor2;
        int dortmund[count];
        int bayern[count];
        int tmptor1=0;
        int tmptor2=0;
        int punktebayern=0;
        int punktedortmund=0;
    
    // printf ("Punkterechner\n");
        while (spiele != count)  //  Compieler kennt "spiele" nicht
        {
            printf ("Bitte geben Sie die Tore fuer das %d. Spiel ein\n",count+1);
            printf ("Bayern: \n");
            scanf ("%d",&tor1);
            printf ("Dortmund: \n");
            scanf ("%d",&tor2);
            bayern[count] = tor1;
            dortmund[count] = tor2;
    
    //Tore addieren
            tmptor1 = bayern[count]+tmptor[1];     // nach dem "+" woher kommt tmptor
            tmptor2 = dortmund[count]+tmptor[2];
    
    //Ergebnis in Funktion Punkterechner einsetzen
            punkte (bayern, dortmund, count);
            punktebayern = punktebayern + bayern[count];
            punktedortmund = punktedortmund + dortmund[count];
            count ++
        }
    
    //Wertebilanz ausgeben
        printf ("Tore Bayern: %d\n", tmptor1);
        printf ("Tore Muenchen: %d\n", tmptor2);
        printf ("Punkte Bayern: %d\n", punktebayern);
        printf ("Puntke Muenchen: %d\n", punktemuenchen);   // wat denn nu? - München oder ... 
    
        getchar();
        return 0;
    }
    


  • Einrückung falsch bei

    int main(void)
    


  • ahh 🙂 danke!

    auch jetzt habe ich noch etwas gebraucht das zu verstehen, aber dann 🙂 ^^
    ich glaube ohne den hinweis hätte ich das einfach immer weiter übersehen...

    und unten bin ich etwas durcheinander gekommen 😃

    noch ein fehler war, dass ich immer if else anstatt else if geschrieben habe.

    jetz klappppts 🙂 thx!


Anmelden zum Antworten