tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
JA
ANTWORTEN
16
ZUGRIFFE
381
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    Hey, ich habe seid einigen Tagen wieder mit der c programmierung angefangen und habe eine Frage, zu meinem folgenden "Programm"

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

    int main()
    {
    int zahl1, zahl2, Sum1, Diff1, pro1, quo1;
    int waehlen = 0;


    /*Zahlen eingeben*/
    printf("Taschenrechner 1.0\n\n");
    printf("Geben Sie einen Wert fuer [1] ein: ");
    scanf("%i", &zahl1);
    printf("Geben Sie einen Wert fuer [2] ein: ");
    scanf("%i", &zahl1);

    /*Aktion Auswählen*/

    printf("\n1: Um die Summe der beiden Zahlen auszurechnen druecken Sie die [1]: ");
    printf("\n2: Um die Differenz der beiden Zahlen auszurechnen druecken Sie die [2]: ");
    printf("\n3: Um das Produkt der beiden Zahlen auszurechnen druecken Sie die [3]: ");
    printf("\n4: Um den Quotienten der beiden Zahlen auszurechnen druecken Sie die [4]: ");
    printf("\n\nIhre Zahl lautet: ");
    scanf("%i", &waehlen);

    /*Rechnung festlegen*/
    float erg1 = 1;
    float erg2 = 2;
    float erg3 = 3;
    float erg4 = 4;

    switch(waehlen) {
    case 1: erg1 = zahl1 + zahl2; break;
    case 2: erg2 = zahl1 - zahl2; break;
    case 3: erg3 = zahl1 * zahl2; break;
    case 4: erg4 = zahl1 / zahl2; break;
    }

    /*Ergebnis*/
    if (erg1 == 1) {
    printf("\nIhr Ergebnis lautet: %.2f");
    }
    else (erg2 == 2) ;{
    printf("Ihr Ergebnis lautet: %.2f");
    }
    else if (erg3 == 3) ;{
    printf("Ihr Ergebnis lautet: %.2f");
    }
    else if (erg4 == 4) ;{
    printf("Ihr Ergebnis lautet: %2.f");
    }

    system("PAUSE");
    return 0;
    }


    Erstmal vorab: Ich möchte, dass man am anfang 2 zahlen eingibt und sich danach aussuchen kann, ob man die addiert, subtrahier, multupliziert, oder dividiert. das klappt auch soweit, bis auf die Rechnung. Hoffentlich findet Ihr den grund, warum das nicht funktioniert. Bin schon die ganze Zeit am rumhantieren, aber es will nicht klappen. Mein wissensstand ist gerade nicht sehr groß, was c angeht, und wenn´s geht, keine fachbegriffe zur Erklärung benutzen Danke Euch
     

  2. #2
    Avatar von MSVCplusplus
    MSVCplusplus MSVCplusplus ist offline Mitglied Brokat
    Registriert seit
    Dec 2010
    Ort
    Hessen
    Beiträge
    336
    Code cpp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    
    /*Rechnung festlegen*/ 
    float erg1 = 1;
    float erg2 = 2;
    float erg3 = 3;
    float erg4 = 4;
     
    switch(waehlen) {
    case 1: erg1 = zahl1 + zahl2; break;
    case 2: erg2 = zahl1 - zahl2; break;
    case 3: erg3 = zahl1 * zahl2; break;
    case 4: erg4 = zahl1 / zahl2; break;
    }
     
    /*Ergebnis*/
    if (erg1 == 1) {
    printf("\nIhr Ergebnis lautet: %.2f"); 
    }
    else (erg2 == 2) ;{
    printf("Ihr Ergebnis lautet: %.2f");
    }
    else if (erg3 == 3) ;{
    printf("Ihr Ergebnis lautet: %.2f");
    }
    else if (erg4 == 4) ;{
    printf("Ihr Ergebnis lautet: %2.f");
    }
    ?
    Was genau geht denn nicht?
    Aber so wie du es geschrieben hast darf es nicht gehen
    MFG
     
    Fehlermeldung bitte!
    Google - Dein Freund und Helfer

  3. #3
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    vor dem else wird ein primärer-ausdruck erwartet. okay und warum darf es nicht funktionieren?
     

  4. #4
    Avatar von MSVCplusplus
    MSVCplusplus MSVCplusplus ist offline Mitglied Brokat
    Registriert seit
    Dec 2010
    Ort
    Hessen
    Beiträge
    336
    OK Ich denke es darf nicht funktionieren
    Aber warum prüfst du das erg? Es wird doch sowieso überschrieben währen der Rechnung!
    Und was geht jetzt nochmal nicht? Startet es nicht, Compiler Fehler. Keine Ausgabe ( am warscheinlichsten ).
    Und falls du denkst ich bin böse... nein tut mir leid wenn ich mich so ausdrücke
    MFG
     
    Fehlermeldung bitte!
    Google - Dein Freund und Helfer

  5. #5
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    ich compiliere es, und gebe es dann aus. mach das mit dev++, aber es wird ja nicht ausgeführt, da ja ein fehler drinne ist.

    also, soll ich alles ab dem /*Ergebnis*/ weglassen?, hatte ich vorhin auch schon, hat aber net geklappt, was nun?
     

  6. #6
    Avatar von MSVCplusplus
    MSVCplusplus MSVCplusplus ist offline Mitglied Brokat
    Registriert seit
    Dec 2010
    Ort
    Hessen
    Beiträge
    336
    Achso du bekommst ein Compiler fehler...
    Mache mal die Semikolons nachdem else if's weg:
    Und aus dem eine else ein else if
    Code cpp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    /*Ergebnis*/
    if (erg1 == 1) {
    printf("\nIhr Ergebnis lautet: %.2f"); 
    }
    else if(erg2 == 2){
    printf("Ihr Ergebnis lautet: %.2f");
    }
    else if (erg3 == 3){
    printf("Ihr Ergebnis lautet: %.2f");
    }
    else if (erg4 == 4){
    printf("Ihr Ergebnis lautet: %2.f");
    }
    Edit Poste doch mla bitte den ganzen fehler mit Zeilen nummer.
    MFG
     
    Fehlermeldung bitte!
    Google - Dein Freund und Helfer

  7. #7
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    Okay hab ich. es wird jetzt ausgeführt, aber als ergebnis kommt überall 0.00 raus
     

  8. #8
    Avatar von MSVCplusplus
    MSVCplusplus MSVCplusplus ist offline Mitglied Brokat
    Registriert seit
    Dec 2010
    Ort
    Hessen
    Beiträge
    336
    Dann denk mal nach warum
    man darf hier leider keine Komplett lösung posten sry.... :S
    Aber worüber du nachdenken solltest ist:
    if (erg1 == 1)
    printf
    /*Rechnung festlegen*/
    float erg1 = 1;
    float erg2 = 2;
    float erg3 = 3;
    float erg4 = 4;

    Da macht einiges kein Sinn...
    MFG
     
    Fehlermeldung bitte!
    Google - Dein Freund und Helfer

  9. #9
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    switch(waehlen) {
    case 1: printf("\nIhr Ergebnis lautet: %.2f", zahl1 + zahl2); break;
    case 2: printf("\nIhr Ergebnis lautet: %.2f", zahl1 - zahl2); break;
    case 3: printf("\nIhr Ergebnis lautet: %.2f", zahl1 * zahl2); break;
    case 4: printf("\nIhr Ergebnis lautet: %.2f", zahl1 / zahl2); break;
    }

    ich habs jetzt so geschrieben, trotzdem kommt noch 0.00 überall raus Oo
     

  10. #10
    Avatar von MSVCplusplus
    MSVCplusplus MSVCplusplus ist offline Mitglied Brokat
    Registriert seit
    Dec 2010
    Ort
    Hessen
    Beiträge
    336
    Das ist schonmal gut.
    Aber denk nochmal am Anfang nach da fragst du nach zahl 2 schreibst aber auf zahl1!? ( Hats Click gemacht? )
     
    Fehlermeldung bitte!
    Google - Dein Freund und Helfer

  11. #11
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    ja, ******e, verschrieben
     

  12. #12
    Avatar von MSVCplusplus
    MSVCplusplus MSVCplusplus ist offline Mitglied Brokat
    Registriert seit
    Dec 2010
    Ort
    Hessen
    Beiträge
    336
    Gehts? Oder nicht?
    Und wichtig statt Komma immer . schreiben wenn du was eingibst
     
    Fehlermeldung bitte!
    Google - Dein Freund und Helfer

  13. #13
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    aber es kommt immernoch überall 0.00 raus?
     

  14. #14
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    So ok, sehr komisch, aber so funktioniert es. ich hab jetzt float durch in ersetzt und %.2f durch %i oO
     

  15. #15
    Windassel Windassel ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    17
    okay, doch geht jetzt auch mit float, zahl1 und und zahl2 musste ich als float und nicht als int definieren
     

Ähnliche Themen

  1. JS rechnen * und +
    Von cokie im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 24.01.11, 22:50
  2. Rechnen
    Von Sasser im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 29.04.09, 18:15
  3. mit PHP rechnen..
    Von madirfan im Forum PHP
    Antworten: 1
    Letzter Beitrag: 27.05.08, 15:08
  4. Rechnen
    Von mckani im Forum PHP
    Antworten: 0
    Letzter Beitrag: 07.12.05, 18:08
  5. Rechnen in SQL
    Von kesnw im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 24.10.03, 15:26

Stichworte