In c einen Taschenrechener erstellen

Halloechen,
ich hab da mal 'ne Frage, wie kann man in c ein Programm schreiben, sodass der User mehrere arithmetische Operatoren hintereinader eingeben kann und mit einen Enter druck das Ergebnis bekommt. Ich selbst hab leider nur ein einfachen Taschenrechner erstellen koennen, wobei da die Operatoren schon von vorherein bestimmt wurden und nicht mehr als eine Operator zur Verwendung stand.

Kopie:
#include

int main()
{
int rechner;
float x,y,summe;

do{
printf("\nMein einfacher Taschenrechner\n");
printf(„Bitte waehlen Sie nun folgende Optionen aus\n“);
printf(„Addition \n“);
printf(„Subtration \n“);
printf(„Mutliplikation \n“);
printf(„Devision \n“);
printf(„Programm ende \n“);
printf(„Bitte waehlen Sie jetzt: \b\b“);
scanf ("%d",&rechner);
fflush(stdin);

switch (rechner){
case 1: printf(„Bitte geben sie nun die Zahl fuer x ein\n“);
scanf ("%f",&x);
printf(„Bitte geben sie nun die Zahl fuer y ein\n“);
scanf ("%f",&y);
summe = x+y;
printf(„Das Ergebnis lautet: %f\n“,summe);
break;
case 2: printf(„Bitte geben sie nun die Zahl fuer x ein\n“);
scanf ("%f",&x);
printf(„Bitte geben sie nun die Zahl fuer y ein\n“);
scanf ("%f",&y);
summe = x-y;
printf(„Das Ergebnis lautet: %f\n“,summe);
break;
case 3: printf(„Bitte geben sie nun die Zahl fuer x ein\n“);
scanf ("%f",&x);
printf(„Bitte geben sie nun die Zahl fuer y ein\n“);
scanf ("%f",&y);
summe = x*y;
printf(„Das Ergebnis lautet: %f\n“,summe);
break;
case 4: printf(„Bitte geben sie nun die Zahl fuer x ein\n“);
scanf ("%f",&x);
printf(„Bitte geben sie nun die Zahl fuer y ein\n“);
scanf ("%f",&y);
summe = x/y;
printf(„Das Ergebnis lautet: %f\n“,summe);
break;
default: break;
}
}while(rechner !=5);
return 0;
}

Ich bitte deshalb um verbesserungs Vorschlaege und eventuell ein neuen Loesungsweg. Schon mal danke im voraus.

Mit freundlichen Gruessen
Darius Korzeniewski

Hallo Darusz,

ich hab da mal 'ne Frage, wie kann man in c ein Programm
schreiben, sodass der User mehrere arithmetische Operatoren
hintereinader eingeben kann und mit einen Enter druck das
Ergebnis bekommt. Ich selbst hab leider nur ein einfachen
Taschenrechner erstellen koennen, wobei da die Operatoren
schon von vorherein bestimmt wurden und nicht mehr als eine
Operator zur Verwendung stand.

Da benutzt Du am besten einen Stack. Ein Beispiel für das Prinzip findest Du hier:
http://www.leda-tutorial.org/de/inoffiziell/ch02s04s…

Hier noch ein anderes Beispiel:
http://www.programmersheaven.com/download/16076/down…

Viel Erfolg
Klaus Bernstein

Hallo Herr Bernstein,

erstmal herzlichen Dank fuer Ihre schnell Antwort. Doch leider fehlt mir igendwie das noetige Konw-how um es umsetzen zu koennen. Kennen Sie eventuell ein Tutorial, dass ueber die Grundlagen von c hinausgeht und mir bei meiner Aufgabe behilflich ist?

Freu mich jetzt schon auf Ihre Antwort.

Mit freundlichen Gruessen

Darius Korzeniewski