Brauche Hilfe bei 2 kleinen Programmen



  • Nö, damit ich weiss wies geht. Ich brauch ja nur die printf's und die scanf's für die beiden Beispiele. Die Restlichen 4Beispiele hab ich schon so gut wie fertig mir fehlt nur eins, und das werde ich Heute oder morgen machen.
    Ich kapier nur bei den beiden nicht wies geht S:



  • RTFM oder die Onlinehilfe vom Compiler oder http://www.cplusplus.com/reference/clibrary/cstdio/printf/ oder jedes C-Buch (auch die aus der Bibliothek).



  • hm und wie lese ich mit scanf eine Zahl ein, die 2 NachKomma-Stellen hat?



  • Du liest eine Fließkommazahl (float oder double) ein. Wenn der User 100 Nachkommastellen eingibt, dann hat er halt 98 zuviel eingegeben.

    Rechne bei Geldbeträgen lieber ganzzahlig in Cent. Da gibt es keine Rundungsfehler.



  • Der Betrag muss aber in Euro eingegeben werden. Ich hab am Freitag meinen Lehrer gefragt, er hat gesagt es macht nix wenn ein Rundungsfehler drin ist.



  • Der Betrag muss aber in Euro eingegeben werden. Ich hab am Freitag meinen Lehrer gefragt, er hat gesagt es macht nix wenn ein Rundungsfehler drin ist.

    Edit: Sry, doppelpost...



  • Da widerspricht sich doch nicht.
    Eingabe als Fließkommazahl -> Umrechnung in Cent -> Berechnung.
    Bei der Ausgabe hast du eh nur ganzzahlige Werte.



  • PwN0GrPhy schrieb:

    Der Betrag muss aber in Euro eingegeben werden. Ich hab am Freitag meinen Lehrer gefragt, er hat gesagt es macht nix wenn ein Rundungsfehler drin ist.

    Auch Eurobeträge bestehen aus Zahlen. In deinem Beispiel wird auch ganz normal eine Fließkommazahl eingegeben.



  • aha.
    Ich hab jetzt die Eingabe, aber wie rechne ich es in Cent um?



  • Das ist Stoff der 2. Klasse.
    Wieviel Cent sind ein Euro?



  • drölf



  • Ich würde sagen, du lieferst hier mal konkreten Code ab und stellst dann konkrete Fragen dazu.



  • Dirk ich bin in der ersten oO Und wie man Euro in Cent umrechnet weiss ich auch(den betrag mal 100 rechnen).
    Und der Code, den ich bis jetzt habe sieht wie folgt aus (ja ich weiss, das is noch nicht mal annäherhnd fertig):

    #include <stdio.h>
    
    int main (void) {
    
    double b;
    e500
    e200
    e100
    e50
    e20
    e10
    e5
    
    c50
    c20
    c10
    c5
    c2
    c1
    
        printf("Betrag in Euro -->");
        scanf("%2lf", b);
        printf(" mal 500Euro")
        printf(" mal 200Euro")
        printf(" mal 100Euro")
        printf(" mal 50Euro")
        printf(" mal 20Euro")
        printf(" mal 10Euro")
        printf(" mal 5Euro")
        printf(" mal 50Cent")
        printf(" mal 20Cent")
        printf(" mal 10Cent")
        printf(" mal 5Cent")
        printf(" mal 2Cent")
        printf(" mal 1Cent")
    
    return 0;
    }
    


  • Toll.
    Es muss natürlich

    scanf("%lf", &b);
    

    heissen, auch würde ich mich als C Compiler weigern, die e* Zeilen zu übersetzen.



  • Warum muss es

    scanf("%lf", &b);
    

    heissen?
    Und wie würdest du die "e* Zeilen" machen?



  • Grundlagen, lies ein gutes C Buch.



  • Dafür hab ich momentan keine Zeit. Ausserdem habe ich "nur" ein Skriptum. Und warum frage ich wohl in einem Forum nach? Wohl nicht damit ich die Zeit von Leuten verschwenden kann, wegen Fragen die ich mir selber beantworten kann...

    Edit: Sry, ich hab den falschen Code gepostet. Das ist mein Code:

    #include <stdio.h>
    
    int main (void) {
    
    double b;
    char e500;
    char e200;
    char e100;
    char e50;
    char e20;
    char e10;
    char e5;
    
    char c50;
    char c20;
    char c10;
    char c5;
    char c2;
    char c1;
    
        printf("Betrag in Euro -->");
        scanf("%lf*100", b);
        printf(" mal 500Euro \n");
        printf(" mal 200Euro \n");
        printf(" mal 100Euro \n");
        printf(" mal 50Euro \n");
        printf(" mal 20Euro \n");
        printf(" mal 10Euro \n");
        printf(" mal 5Euro \n");
        printf(" mal 50Cent \n");
        printf(" mal 20Cent \n");
        printf(" mal 10Cent \n");
        printf(" mal 5Cent \n");
        printf(" mal 2Cent \n");
        printf(" mal 1Cent \n");
    
    return 0;
    }
    

    Und ja ich habe mittlerweile herausgefunden wie man in C multipliziert.



  • Mit diesen verbalen Aktivitäten wirst du hier kaum Leute bewegen können, dir zu antworten.
    Aber lasse dich mal überraschen, vielleicht findet sich ja doch noch jemand, der dir hier schnell mal kostenlos einen dir genehmen Überblick über die C Grundlagen gibt. Das wird schon deshalb schwierig werden, da du noch nicht mal die Syntax beherrscht.



  • PwN0GrPhy schrieb:

    Dafür hab ich momentan keine Zeit. Ausserdem habe ich "nur" ein Skriptum.

    Es gibt auch Bibliotheken, wo man Bücher ausleihen kann.

    PwN0GrPhy schrieb:

    Und warum frage ich wohl in einem Forum nach? Wohl nicht damit ich die Zeit von Leuten verschwenden kann, wegen Fragen die ich mir selber beantworten kann...

    Wenn du Pech hast, schreibt dir jemand das Programm.
    Programmieren lernt man durch programmieren. Und aus Fehlern lernt man durchaus.



  • Der Modulo-Operator könnte bei deiner Aufgabe übrigens ganz hilfreich sein.


Anmelden zum Antworten