Ergebnis 1 bis 5 von 5
-
01.11.2010, 19:04 #1ASDFASDF
C "Taschenrechner" porgrammieren
Ich soll von meiner Uni aus einen kleinen Taschenrechner in C programmieren. Das hat auch soweit ganz gut geklappt, bloß ich häng jetzt bei der Eingabe von ungültigen Rechenoperationen fest. Laut Aufgabenstellung soll das Programm eine Fehlermeldung auswerfen, wenn man keine Zahl eingibt oder durch 0 teilen will. Das Programm addiert, substrahiert, dividiert und multipliziert automatisch, also man muss wirklich nur die Zahlen eingeben. Hat jemand ne Ahnung wie man das codet?
Hier nochmal der Code für die Eingabe:
Code:float a; { printf("Wert 1 eingeben: "); scanf("%f",&a); } float b; { printf("Wert 2 eingeben: "); scanf("%f",&b); }
ASDFASDF
-
-
01.11.2010, 20:08 #2Selensija
AW: C "Taschenrechner" porgrammieren
Benütz If Bedinungen und schreib einfach die Rechnung hinein...
In der Zeit wo du 2 Foren Accounts machst, hättest du die C Hilfe durchlesen können und wärst fertig...
Denn wenn du von deiner Uni ne Aufgabe bekommst, solltest du dich über die Arbeitsschritte informieren und die Aufgabe nicht von anderen erledigen lassen. -.-
-
01.11.2010, 20:46 #3Dagobert Duck
AW: C "Taschenrechner" porgrammieren
Code:#include <cstdlib> #include <iostream> #include <string> #include <conio.h> using namespace std; int exit(); double prozent1 ( double w,double p ); double prozent2 ( double g,double p ); double prozent3 ( double w,double g ); double func ( double *zahl1, double *pzahl2 ); double potenz( double a,double b ); int main() { system ( "cls" ); double zahl1,zahl2; cout << "-------------------\n"; cout << "Mein Taschenrechner\n"; cout << "-------------------\n"; cout << "\nWaehlen Sie aus : \n"; cout << "(1) Addition\n"; cout << "(2) Multiplikation\n"; cout << "(3) Division\n"; cout << "(4) Subtraktion\n"; cout << "(5) Potenzrechnung\n"; cout << "(6) Prozentrechnung\n"; cout << "(7) Exit\n"; switch ( getch() ) { case '1': { func( &zahl1,&zahl2 ); cout << zahl1 << " + " << zahl2 << " = " << zahl1 + zahl2 << endl; break; } case '2': { func( &zahl1,&zahl2 ); cout << zahl1 << " * " << zahl2 << " = " << zahl1 * zahl2 << endl; break; } case '3': { func( &zahl1,&zahl2 ); if( zahl2==0 ) { cout << "Teilen durch 0 unmoeglich!" << endl; } else cout << zahl1 << " / " << zahl2 << " = " << zahl1 / zahl2 << endl; break; } case '4': { func( &zahl1,&zahl2 ); cout << zahl1 << " - " << zahl2 << " = " << zahl1 - zahl2 << endl; break; } case '5': { system( "cls" ); double a,b; cout << "Bitte geben Sie eine Zahl ein :"; cin >> a; cout << "Geben Sie die Potenz an :"; cin >> b; cout << "Das Ergebniss betraegt : " << potenz( a,b ) << endl; break; } case '6': { system( "cls" ); cout << "Was moechten Sie Berechnen?\nWaehlen Sie aus:\n"; cout << "(1) Grundwert [G]\n"; cout << "(2) Prozentwert [W]\n"; cout << "(3) Prozentsatz [p]\n"; switch ( getch() ) { case '1': { system( "cls" ); double w,p; cout << "bitte geben Sie den Prozentwert W ein: "; cin >> w; cout << "bitte geben Sie den Prozentsatz p ein: "; cin >> p; cout << "G = W*100/p = " << prozent1( w,p ) << "\n"; break; } case '2': { system( "cls" ); double p,g; cout << "bitte geben Sie den Grundwert G ein: "; cin >> g; cout << "bitte geben Sie den Prozentsatz p ein: "; cin >> p; cout << "W= G*p/100 = "<<prozent2(p,g)<<"\n"; break; } case '3': { system( "cls" ); double w,g; cout << "bitte geben Sie den Grundwert G ein: "; cin >>g; cout << "bitte geben Sie den Prozentwert W ein: "; cin >> w; cout << "p= 100*W/G = "<<prozent3(w,g)<<" %\n"; break; } } break; } case '7': return 0; default: cout << "Falsche Eingabe!\n"; } exit(); } ////////////////////////////// double potenz ( double a,double b ) { if ( b==0 ) return 1; else return a * potenz( a,b-1 ); } ////////////////////////////////// double func ( double *pzahl1,double *pzahl2 ) { system( "cls" ); cout << "Bitte Geben Sie die erste Zahl ein :"; cin >> *pzahl1; cout << "Bitte Geben Sie die zweite Zahl ein :"; cin >> *pzahl2; } //////////////////////////////////////// double prozent1 ( double w,double p ) { return W*100/p; } //////////////////////////////////////// double prozent2 ( double g,double p ) { return g*p/100; } //////////////////////////////////////// double prozent3 ( double w,double g ) { return 100*w/g; } //////////////////////////////////////// int exit() { cout << "Moechten Sie das Programm Beenden?? j/n :\n"; switch ( getch() ) { case 'j' : return 0; case 'n' : return main(); default : cout << "!Falsche Eingabe!\n"; return exit(); } }
lg
-
02.11.2010, 08:29 #4ASDFASDF
AW: C "Taschenrechner" porgrammieren
Danke für den Hinweis Selensija!
Ich habe mir schon genug C-Hilfen durchgelesen und habs trotzdem nicht hinbekommen, deswegen frage ich hier ja auch. Ich erwarte ja auch von keinem, dass er mir den fertigen Code gibt, sondern hoffe einfach nur, dass ich nen Tip bekomme, wie ich das zu coden habe. Du musst hier nicht den Moralapostel spielen.
@Limatex: Danke für den Code, werd ihn mir gleich mal durchgucken.^^
-
02.11.2010, 14:21 #5Selensija
AW: C "Taschenrechner" porgrammieren
Code:{ float a,b,c,d,e,f,g,h; //c,d,e,f = Ergebnisse printf("Wert1: "); g=scanf("%f" ,&a); printf("Wert2: "); h=scanf("%f" ,&b); if (g == 1) { if (h == 1) {
Ähnliche Themen
-
Was wäre, wenn Sony immer noch die Rechte auf die "Crash Bandicoot"- und "Spyro"-Serie hätte?: Meiner Meinung nach haben Naughty Dog und Insomaniac Games einen Riesenfehler begangen, indem sie die Rechte bei Vivendi bzw. heute Activision... -
Suche PS2/3 Spiele "Shadow of the Colossus"; "ICO"; "We love Katamari": Wie schon im Titel steht, Suche diese 3 PS2 Titel (und hoffe, dass sie auf der ps3 laufen!) Es gibt sie nicht mehr neu zu kaufen, und bei... -
[suche] CRT-TV 21" mit "Real Flat - Bildröhre" und "RGB-Scart": Guten Abend, Ich bin schon sehr lange auf der Suche nach dieser Kombination! Leider wurde ich bei meinen bisherigen Käufen immer enttäuscht. Dabei... -
Tausche/verkaufe "Little BIG Planet", "Motorstorm", "Burnout Paradise" und "Skate": hi, hab diese drei Spiele anzubieten, alle OVP und in einwandfreiem Zustand. Ich bräuchte einen original Sony Sixaxis Controller, da ich bis jetz... -
Piepen und durchgehendes "drücken" von "1" oder "^": Moin moin, seit gestern habe ich dieses Problem. Es trat auf als ich WordPad benutzte. Der Computer fängt an einfach durchgehend die Taste "1"...
20...
User vs. Mods