Witzprogramm schreiben ( Anfänger )
-
Ihr versteht es echt jemanden fertig zu machen
Na ja gut ich bin ja noch am lernen und dieses Programm sit auch selbst von mir geschrieben daher keine korrekte Übung irgendwo abgeschrieben oder so.
Deshalb bin ich auch für diese Tipps sehr dankbar.Das mit der 27 habe ich bei einem anderen Programm mal gesehen glaube ich.
In meinem Buch wird soetwas ähnliches mit '\x1b' angegeben.
Wie mache ich denn das richtig ? So das er bei ESC dann halt aus dem Programm rausgeht und nichts mehr macht....Dann müsste ich nur noch die Enter Taste da heraus nehmen, denn ansonsten bekommt man ja tatsächlich immer Fehleingabe nachdem man die Werte eingegeben hat.
na muss noch soviel lernen
-
So wollte das ganze mal mit do while versuchen und habs auch fast geschafft
Die C++ Cracks mögen es mir verzeihen, aber es läuft leider nicht wie gewünscht..#include <iostream.h> #include <stdio.h> //#include <stdlib.h> int main() { float fahrenheit, celsius; char eingabe ='\x1b'; cout << "1 fuer Fahrenheit nach Clesius\n"; cout << "2 fuer Celsius nach Fahrenheit\n"; do // ESC als einzige Abbruchbedingung { cin.get(eingabe); switch (eingabe) { case '1': cout << "\nFahrenheit eingeben: "; cin >> fahrenheit; celsius =(fahrenheit -32) / 1.8; cout <<celsius <<" Grad Celsius"; break; case '2': cout << "\nCelsius eingeben: "; cin >> celsius; fahrenheit = (celsius * 1.8) + 32; cout << fahrenheit <<" Grad Fahrenheit"; break; default: cout << "\nFehleingabe" ; } }while (eingabe !='\x1b'); /* BIT cin >> bit; byte = 8 / bit; kilobit = 1024 / bit; */ return 0; }
-
Hallo
Also habe gerade noch ein bisschen getestet und herumgespielt.
Hier ist das vorläufige Ergebnis.#include <iostream> #include <stdio.h> #include <stdlib.h> int main() { float fahrenheit, celsius; char eingabe = 0; cout << "1 fuer Fahrenheit nach Clesius\n"; cout << "2 fuer Celsius nach Fahrenheit\n"; do { cin.get(eingabe); // Das seltsame ist, wenn ich es so mache eingabe = getch (); dann kann ich bei ESC beenden und habe auch nicht mehr das Enter = fehleingabe problem.. Aber ich will ja ANSI C++ lernen also wie ist es da korrekt ? switch (eingabe) { case '1': cout << "\nFahrenheit eingeben: "; cin >> fahrenheit; celsius =(fahrenheit -32) / 1.8; cout <<celsius <<" Grad Celsius"; break; case '2': cout << "\nCelsius eingeben: "; cin >> celsius; fahrenheit = (celsius * 1.8) + 32; cout << fahrenheit <<" Grad Fahrenheit"; break; default: cout << "\nFehleingabe" ; } }while (eingabe !=27 && eingabe!='b'); // DAs b habe ich nur eingefügt, weil ich den //Ascii Zeichensatz für ENTER nicht wusste.., aber eigentlich könnte ich doch dann über // == ENTER|ASCII den Fehler das wenn man Zahl und enter eingibt auch //fehlermeldung kommt vermeiden oder ? Sorry wenn ich da nun nen Denkfehler habe, // aber bin seit 13 Stunden am arbeiten. /* BIT cin >> bit; byte = 8 / bit; kilobit = 1024 / bit; */ return 0; }