Problem mit Taschenrechner Funktion



  • Hallo,

    wenn ich das Programm starte und z.b. die 2 drücke dann will ich ja erst subtrahieren dann fragt der mich halt nach den zahlen dann geb ich z.b. ein als erste zahl 6 und als zweite zahl 4 aber dann addiert der immer anstatt zu subrahieren.

    Hier ist mal der Source vielleicht hat ja einer ne ahnung was da falsch ist:

    #include <iostream>
    using namespace std;
    
    void ausgabe(int menu);
    void abfrage_add();
    void abfrage_sub();
    
    int main ()
    
    {
    int menu,calc;
    ausgabe(menu);
    abfrage_add();
    abfrage_sub();
    system("PAUSE");
    }
    
    void ausgabe(int menu)
    {
    cout<<"~~Taschenrechner~~\n";
    cout<<"\n";
    cout<<"(1) Addieren\n";
    cout<<"(2) Subtrahieren\n";
    cout<<"\n";
    cout<<"Nummer Eingeben: ";
    cin>>menu;
    }
    
    void abfrage_add()
    {
    int menu,zahl1,zahl2,calc;
    if (menu==1);
    cout<<"Geben sie die erste Zahl ein: \n";
    cin>>zahl1;
    cout<<"Geben sie die erste Zahl ein: \n";
    cin>>zahl2;
    calc =zahl1+zahl2;
    cout<<"Das Ergebniss aus "<<zahl1<<" + "<<zahl2<<" lautet "<<calc<<"\n";
    }
    
    void abfrage_sub()
    {
    int menu,zahl1,zahl2,calc;
    if (menu==2);
    cout<<"Geben sie die erste Zahl ein: \n";
    cin>>zahl1;
    cout<<"Geben sie die erste Zahl ein: \n";
    cin>>zahl2;
    calc =zahl1-zahl2;
    cout<<"Das Ergebniss aus "<<zahl1<<" + "<<zahl2<<" lautet "<<calc<<"\n";
    }
    


  • Du wertest menu nicht aus. Schau nochmal zurück in den anderen Thread.



  • Du solltest den eingegebenen Wert ans Hauptprogramm zurückgeben (aktuell bemerkt main() nicht einmal, daß du etwas eingegeben hast) - und dann per if() auswählen, was du weiter machen willst:

    int ausgabe()
    {
      int menu;
      cout<<"~~Taschenrechner~~\n";
      cout<<"\n";
      cout<<"(1) Addieren\n";
      cout<<"(2) Subtrahieren\n";
      cout<<"\n";
      cout<<"Nummer Eingeben: ";
      cin>>menu;
      return menu;
    }
    
    int main()
    {
      int wahl = ausgabe();
      if(wahl==1)
        abfrage_add();
      else
        abfrage_sub();
    }
    

    (PS: Für system("PAUSE"); gehörst du eigentlich gesteinigt)



  • warum bleibst du nicht mal in einem thread? dadurch, dass du hier ewig viele threads öffnest, wird dein problem nur unübersichtlich.



  • ok thx CStoll



  • Eins hab ich noch nicht ganz verstaden.

    int main() 
    { 
      int wahl = ausgabe();    
      if(wahl==1) 
        abfrage_add(); 
      else 
        abfrage_sub(); 
    }
    

    wieso kann man bei wahl eingeben was man will z.b.

    int main() 
    { 
      int user = ausgabe(); 
      if(user==1) 
        abfrage_add(); 
      else 
        abfrage_sub(); 
    }
    

    wäre es zwinget notwenig das man da menu eingeben müsste dann wäre mir das klar weil menu ja = die ausgabe ist.



  • hast du dich schonmal mit grundlagen beschäftigt?? das solltest du vielleicht erstmal tun, bevor du anfängst irgendwas zu coden...

    "wahl" ist nur der bezeichner einer variable und kann (fast) frei gewählt werden. es gibt einige schlüsselwörter die man nicht benutzen darf. aber wie gesagt, sowas lernt man, wenn man sich mal die grundlagen ansieht...



  • In dem Tutorial da wo ich am lesen bin da stand da aber nichts von .....



  • was fürn tut ist das? dann ist es keins für anfänger



  • Dieses hier: http://www.cpp-tutor.de/cpp/intro/toc.htm

    hast du vielleicht eins wo die Grundlagen besser erklärt werden?



  • Lektion 2 schrieb:

    Nach dem Datentyp folgt der Name der Variable. Über diesen Namen können Sie dann der Variable Werte zuweisen oder auch den aktuellen Wert auslesen. Der Name muss eindeutig sein, d.h. es darf keine zweite Variable (oder Funktion und Ähnliches) mit gleichem Namen geben.

    Und darüber kommt man nicht von selbst drauf, dass der Name der Variable (in gewissen Grenzen) frei wählbar ist?!



  • LordJaxom schrieb:

    Lektion 2 schrieb:

    Nach dem Datentyp folgt der Name der Variable. Über diesen Namen können Sie dann der Variable Werte zuweisen oder auch den aktuellen Wert auslesen. Der Name muss eindeutig sein, d.h. es darf keine zweite Variable (oder Funktion und Ähnliches) mit gleichem Namen geben.

    Und darüber kommt man nicht von selbst drauf, dass der Name der Variable (in gewissen Grenzen) frei wählbar ist?!

    kommt man nicht, wenn man script-kiddy charakter hat und einfach wild drauflos prügelt und alle beispiele einfach nachbauen/abschreiben will ohne zu wissen wie was funzt.

    ich denke mal er hat einfach kein bock zum lesen und hier sollen ihm alle irgendwie helfen.

    ne ne 🙄



  • Was heisst:

    Und darüber kommt man nicht von selbst drauf ?

    oder meinst du

    Und da kommt man nicht von selbst drauf ?



  • wie alt bist du eigentlich? 🙄



  • n/c machine ich kann mir auch nicht alles merken du flamer ...... 😡

    ps. das war nicht aufs alter beozgen ^^



  • n/c machine ich kann mir auch nicht alles merken du flamer ...... 😡

    ps. das war nicht aufs alter beozgen ^^ aber mein alter geht dich auch nichts an



  • wenn du dir die einfachsten sachen nicht merken kannst, bist du falsch beim programmieren^^

    wär ich mod hätte ich dich für deine vorherigen posts gebannt übrigends. aber ich lass mich halt nicht von irgendwelchen 13-jährigen pubertierenden script-kiddies beleidigen 😛



  • lol du bist Fachinformatiker du hattest Lehrer die dir das alles erklären konnten und du hattest bestimmt auch nicht nur 1 mal iner woche für nur 90 min unterricht in dem fach so wie ich ..... 😡



  • 1. hatten meine Lehrer weniger Ahnung als alle anderen in der Klasse
    2. hab ich mich durch nen ganzen Haufen Tutorials durchgequält und mir 95% selbst beigebracht
    3. Wollte ich dir nur nen Tip geben und du pi**t mir gleich ans Bein... Wenn du in einer Woche 90 min Infounterricht o. Ä. hast, sollte es wenigstens reichen, dir die Grundlagen zu vermitteln. Daraus folgere ich, dass du entweder zu bl*d bist, oder einfach nicht aufpasst.

    Edit: wenn du davon ausgehst, dass dir jemand das Programmieren durch "erzählen" beibringt, dann hör lieber gleich wieder auf mit dem Programmieren-Lernen^^



  • Iner Schule sind wir aber noch nicht bei den Funktionen.

    Aber ist auch egal genug geflamt



  • Bassmaster schrieb:

    Iner Schule sind wir aber noch nicht bei den Funktionen.

    Aber ist auch egal genug geflamt

    Was macht ihr denn dann? Erstmal das Alphabet lernen, oder was? Ich glaube so VariablenBezeichner etc. lernt man am Anfang. Und das hat mit Funktionen nix zu tun^^


Anmelden zum Antworten