This post has been edited 1 times, last edit by "Pl0x" (Jun 27th 2011, 11:18am)
Das simpelste was man ohne Funktionen machen kann:
![]()
C/C++ Quellcode
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 #include <iostream> //iostream einbinden #include <Windows.h> //Windows.h einbinden using namespace std; int main() //Hauptthread { int auswahl=0; //Auswahl float zahl1=0.f; //zahl1 einer Aufgabe /* Ob 0.f oder float zahl2=0.0f; //zahl2 einer Aufgabe 0.0f ist egal */ bool schleife=true; //Schleife noch am laufen oder nicht? while(schleife) //Schleife { system("cls"); //Bildschirm leeren cout << " Rechner" << endl; cout << "1 - Addition" << endl; cout << "2 - Subtraktion" << endl; cout << "3 - Multiplikation" << endl; cout << "4 - Division" << endl; cout << "5 - Beenden" << endl; cout << "Auswahl: "; cin >> auswahl; //Auswahl eingeben switch(auswahl) //Fokus auf Auswahl { case(1): //Wenn Auswahl == 1 dann { cout << endl << "Summand 1: "; cin >> zahl1; //Summand 1 eingeben cout << endl << "Summand 2: "; cin >> zahl2; //Summand 2 eingeben cout << endl << "Aufgabe: " << zahl1 << "+" << zahl2 << "=" << (zahl1+zahl2) << endl; // Aufgabe und dann Ergebnis ausgeben zahl1=0; //Beide Zahlen zahl2=0; //zuruecksetzen Sleep(1500); //Pausieren fuer 1,5sek }break; case(2): //Wenn Auswahl == 2 dann { cout << endl << "Minuend: "; cin >> zahl1; //Minuend eingeben cout << endl << "Subtrahend: "; cin >> zahl2; //Subtrahend eingeben cout << endl << "Aufgabe: " << zahl1 << "-" << zahl2 << "=" << (zahl1-zahl2) << endl; //Aufgabe ausgeben und dann das Ergebnis zahl1=0; //Beide Zahlen zahl2=0; //zuruecksetzen Sleep(1500); //Pausieren fuer 1,5sek }break; case(3): //Wenn Auswahl == 3 dann { cout << endl << "Faktor 1: "; cin >> zahl1; //Faktor 1 eingeben cout << endl << "Faktor 2: "; cin >> zahl2; //Faktor 2 eingeben cout << endl << "Aufgabe: " << zahl1 << "*" << zahl2 << "=" << (zahl1*zahl2) << endl; //Aufgabe ausgeben und dann das Ergebnis zahl1=0; //Beide Zahlen zahl2=0; //zuruecksetzen Sleep(1500); //Programm fuer 1,5sek einfrieren }break; case(4): //Wenn Auswahl == 5 dann { cout << endl << "Dividend: "; cin >> zahl1; //Dividend eingeben cout << endl << "Divisor: "; cin >> zahl2; //Divisor eingeben cout << endl << "Aufgabe: " << zahl1 << ":" << zahl2 << "=" << (zahl1/zahl2) << endl; //Aufgabe ausgeben und dann das Ergebnis zahl1=0; //Beide Zahlen zahl2=0; //zuruecksetzen Sleep(1500); //Pausieren fuer 1,5sek }break; case(5): //Wenn Auswahl == 5 dann { schleife=false; //Aus Schleife raus gehen }break; default: //Wenn Auswahl == Irgendwas Anderes dann { cout << "FALSCHE EINGABE" << endl; //Fehlermeldung } } } return (0); //0 als Rueckgabewert senden um Programm zu schließen }
|
|
C/C++ Quellcode |
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
#include <iostream> //iostream einbinden using namespace std; int main() //Hauptteil { char eingabe[1024]; //Definition für Char(im Menü) int auswahl; //Definition für Integer double zahl1; //erste Zahl der Aufgabe double zahl2; //zweite Zahl der Aufgabe bool schleife=true; //läuft die Schleife noch oder nicht mehr? while(schleife) //Schleife { cout << "------------Rechner-----------\n" << endl; //Titel "Rechner" cout << "Bitte Auswahl eingeben: 1-5!\n" << endl; //Benutzer wird aufgefordert seine Auswahl zu treffen cout << "------------------------------" << endl; //optische Abgrenzung cout << "1 - Addition" << endl; //Menüauswahl 1 cout << "2 - Subtraktion" << endl; //Menüauswahl 2 cout << "3 - Multiplikation" << endl; //Menüauswahl 3 cout << "4 - Division" << endl; //Menüauswahl 4 cout << "5 - Beenden" << endl; //Menüauswahl 5 cout << "------------------------------\n" << endl; //optische Abgrenzung cout << "Auswahl: "; //Bestätigung der Auswahl cin >> eingabe; //Auswahl eingeben auswahl = atoi(eingabe); //Umwandlung von Char zu Int switch(auswahl) //Bestimmung der Auswahl (case 1-5) { case(1): //Wenn Auswahl == 1 dann { cout << endl << "Summand 1: "; cin >> zahl1; //Summand 1 eingeben cout << endl << "Summand 2: "; cin >> zahl2; //Summand 2 eingeben cout << endl << "Resultat: \n" << zahl1 << "+" << zahl2 << "=" << (zahl1+zahl2) << endl; // Aufgabe und dann Ergebnis ausgeben }break; case(2): //Wenn Auswahl == 2 dann { cout << endl << "Minuend: "; cin >> zahl1; //Minuend eingeben cout << endl << "Subtrahend: "; cin >> zahl2; //Subtrahend eingeben cout << endl << "Resultat: \n" << zahl1 << "-" << zahl2 << "=" << (zahl1-zahl2) << endl; //Aufgabe ausgeben und dann das Ergebnis }break; case(3): //Wenn Auswahl == 3 dann { cout << endl << "Faktor 1: "; cin >> zahl1; //Faktor 1 eingeben cout << endl << "Faktor 2: "; cin >> zahl2; //Faktor 2 eingeben cout << endl << "Resultat: \n" << zahl1 << "*" << zahl2 << "=" << (zahl1*zahl2) << endl; //Aufgabe ausgeben und dann das Ergebnis }break; case(4): //Wenn Auswahl == 4 dann { cout << endl << "Dividend: "; cin >> zahl1; //Dividend eingeben cout << endl << "Divisor: "; cin >> zahl2; //Divisor eingeben if (zahl2 == 0) // Fehler, falls durch 0 dividiert wird! { cout << "Division durch 0 ist nicht erlaubt!\n" << endl; // Benutzer wird darauf hingewiesen, dass er nicht durch Null dividieren kann } else { cout << endl << "Resultat: \n" << zahl1 << ":" << zahl2 << "=" << (zahl1/zahl2) << endl; //Aufgabe ausgeben und dann das Ergebnis } }break; case(5): //Wenn Auswahl == 5 dann { schleife=false; //Aus Schleife raus gehen }break; default: //Wenn Auswahl == Irgendwas Anderes dann { cout << "Eingabe NICHT korrekt!" << endl; //Fehlermeldung } } } return (0); //0 als Rueckgabewert senden um Programm zu schließen } |
Wie mache ich dies aber nun, damit bei den Cases 1-5 auch ein Fehler an den Anwender ausgegeben wird, wenn er beispielsweise nen char eingibt(momentan stürzt das Programm einfach ab)?