Patematthes
Mitglied
Schönen guten Tag ich habe seit einer Woche einen C Lehrgang auf der Arbeit. Ich habe mir als Asbchlussprojekt vorgenommen einen kleinen Taschenrechner zu bauen, dieser soll alle eingaben in einer Zeile ausrechnen können wie z.b. + - * /
Ich hatte schon einen Denkansatz aber dieser scheint nicht richtig zu sein, ich hoffe mir kann jemand einen denkanstoss geben.
Ein Beispiel wäre:
Zeileneingabe: 2+2*3
Ausgabe(printf) 8
So sah mein ansatz aus:
Code:
else
{
printf("\nBitte geben sie maximal %i Zeichen ein.",ZEILENLAENGE);
printf("\nEs werde folgende Zeichen akzeptiert:");
printf("\n\n + ");
printf("\n\n - ");
printf("\n\n * ");
printf("\n\n / ");
printf("\n\n ( ");
printf("\n\n ) ");
for (i=1;i<=5;i++) //schleife für den Bildschirm
{ //schleifen klammer (auf)
printf("\n");
}
printf("\n\nWenn sie die Rechnung eingegeben haben schreiben sie nach dem Enter dr%ccken",129);
printf("\nin der n%cchsten Zeile bitte einen . zum beenden",132);
do
{
printf("\n=");
gets(s);
if(strcmp(s,"."))
{
fputs(s,rechnen);
fputs("\n",rechnen);
}
}
while(strcmp(s,"."));
fclose(rechnen);
printf("Eingabe erfolgreich");
}
}
void lesen (void)
{
FILE*rechnen;
rechnen=fopen(DATEI,"r");
{
if(!rechnen)
{
printf("Datei ist nicht vorhanden!\n\n");
}
else
{
fgets(s,ZEILENLAENGE,rechnen);
if(feof(rechnen))
{
do
{
erg=s;
printf("\nDas ergebniss lautet: %.2lf",erg);
}
while(feof(rechnen));
}
fclose(rechnen);
printf("\nEnde der Rechnung!");
}
}
}
Ich danke schon mal im vorraus.
Zuletzt bearbeitet: