Think_Twice Geschrieben 17. August 2004 Geschrieben 17. August 2004 Hallo ich möchte einen kleinen Taschrechner programmieren, wollte erstmal nur zwei Rechenarten einbinden. Ich kann die entsprechenden Eingaben machen, aber das Fenster schließt sich wieder ohne ein Ergebnis anzuzeugen. Vielleicht wist ihr weiter, hier der Quelltext: /*####################################### Taschenrechner ######################################*/ #include <iostream.h> int addition(int x, int y){ return (x+y); } int subtraktion(int x, int y){ return (x-y); } void main() { int a; int b; int c; cout<<"Zahl 1:";cin>>a; cout<<"Zahl 2:"; cin>>b; cout<<"Opperator:"; cin>>c; if (c=='+') cout<<"Ergebnis:"<<addition(a,<<endl; else cout<<"Ergebnis:"<<subtraktion(a,<<endl; char p[50]; cin.getline(p,50); cin.getline(p,50); } Danke schonmal im Voraus Zitieren
Klotzkopp Geschrieben 17. August 2004 Geschrieben 17. August 2004 Du könntest folgendes an Stelle der getline-Aufrufe an dein Programm anhängen: cin.clear (); cin.ignore(cin.rdbuf()->in_avail()); cin.get (); [/code] Nachtrag: c darf nicht int sein. char wäre richtig. Nur als Anmerkung: Du solltest <iostream> statt <iostream.h> verwenden. Beachte aber, dass dann alle Standardfunktionen und -objekte im Namespace std liegen. Zitieren
Think_Twice Geschrieben 17. August 2004 Autor Geschrieben 17. August 2004 Danke für die Mühe, funktioniert leider immer noch nicht. Die Aufgabe kommt aus einem ILS-Lehrgang Thema Funktionen, Schleifen, If-Else was du mir geschickt hast hatten wir noch nicht. Muss also auch irgendwie anders gehen. Zitieren
Klotzkopp Geschrieben 17. August 2004 Geschrieben 17. August 2004 "Funktioniert nicht" ist keine ausreichende Fehlerbeschreibung. Wenn ich char c; statt int c; schreibe, funktioniert das Programm bei mir tadellos. Zitieren
Think_Twice Geschrieben 17. August 2004 Autor Geschrieben 17. August 2004 du musst ja jede eingabe mit "Enter" bestätigen. Nach der Eingabe des Operators(3.Eingabe) und drücken der Entertaste schließt sich das Fenster. Ich hoffe jetzt ist es präzise genug. Zitieren
PuppetMaster Geschrieben 17. August 2004 Geschrieben 17. August 2004 Ändere mal bitte wie von Klotzkopp gesagt int c in char c Zitieren
Think_Twice Geschrieben 17. August 2004 Autor Geschrieben 17. August 2004 Danke nochmal für Eure Hilfe, ich habe das Prob jetzt über eine switch-case Anweisung gelöst. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.