Nottendurchschnitt



  • He Leute ich bin neu im programmieren und muss im studium ne aufgabe machen komme aber nicht weiter. die aufgaben lautet:

    Schreiben Sie ein Programm, das für beliebig viele Schulnoten (1-6) den
    Durchschnitt ausrechnet. Die Durchschnittsberechnung erfolgt bei der Eingabe
    von 0. Es sind auch .3, .5 und .7 Noten erlaubt, aber keine anderen!
    Falls der Benutzer keine korrekte Zahl (also zum Beispiel 2.4 oder -5) eingegeben
    hat, soll er gefragt werden, ob er die Eingabe wiederholen will oder abbrechen
    will. Entweder muss die Eingabe wiederholt werden oder es erfolgt nur die
    Ausgabe Abbruch auf dem Bildschirm. Wenn der Benutzer 0 eingegeben hat,
    wird der korrekte Durchschnitt auf zwei Kommastellen genau ausgegeben.

    #include <stdio.h>

    int main(void)
    {
    /* Variablendeklaration */
    int n,z;
    float s,d;

    /* Einlesen der Noten */

    printf("Gib die Schulnoten ein (1<=n<=6) und beende die Eingabe mit 0!\n");
    z = 0;
    s = 0.0;
    do
    {
    z = z + 1;
    do
    {
    printf("Gib die %d-te Note ein:",z);
    scanf("%d", &n);
    }
    while ((n<0)||(n>6));
    s = s + n;
    }
    while (n!=0);

    /* Berechnung und Ausgabe des Notendurchschnitts */
    d = 0.0;
    z = z - 1;
    d = s / z;
    printf("Der Notendurchscnhitt ist: %f\n", d);
    printf("\n");
    getchar();

    }

    und nun ja ich komme halt mit der kommastellen abfrage nicht weiter vieleicht kann mir da einer helfen. leute ich suche einfach nur den befehl für ne kommastellen abfrage und kann ihn leider nich finden 😃

    schon mal danke

    leute ich weiß das sollte ich normal alleine lösen können aber ich steh total aufm schlauch und muss das morgen abgeben.

    HELP ME



  • Wenn du eine 6 eingibst, was macht denn dein Programm dann?

    Ich vermute mal ihr sollt keinen Befehl suchen, sondern die Funktion selbst entwickeln.

    MfG f.-th.



  • Hi,

    VanHack schrieb:

    Es sind auch .3, .5 und .7 Noten erlaubt, aber keine anderen!
    .... und nun ja ich komme halt mit der kommastellen abfrage nicht weiter vieleicht kann mir da einer helfen. leute ich suche einfach nur den befehl für ne kommastellen abfrage und kann ihn leider nich finden 😃

    Willst du .3, .5, etc. einlesen, musst du eine float oder double variable nehmen. Dein n ist ein Integer.
    Den Nachkommateil kann man z.B. mit der Funktion modf bekommen:

    #include <math.h> // modf
    double zahl = 1.12, nachkomma, vorkomma;
    		nachkomma = modf ( zahl &vorkomma );
    		printf ("%lf = %lf + %lf \n", zahl, vorkomma, nachkomma);
    

    Gruß,
    B.B.



  • Eine komplette 6.7 würde ich dir für den "Nottendurchschnitt" geben. :p



  • Da hast du dir aber viel mühe bei quelltext kopieren gegeben.. 🙂


Anmelden zum Antworten