Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Wie kann ich mit dem ergebnis weiterrechnen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
12.11.2010, 15:30 Uhr
aii_thats_m3



Hallo es geht diesmal um einen Taschenrechner ('') . Und zwar hab ich den wie´s unten zu sehen ist programmiert. Mein Problem iust jetz, dass ich nicht weiß wie ich es machen muss, dass das pro mit dem ergebniss weiterrechnet und nicht wieder die 1. zahl benutzt, wie das prog es bei mir gerade macht. Hoffe auf eure hilfe...


C++:


#include <iostream>
using namespace std;

int main()
{
int eingabe1;
int eingabe2;
int ergebnis;
int antwort;

char rechenzeichen;
cout<<"Willkommen zum Taschenrechner" << endl;

long anz_Zahlen = 0;

cout<<"Geben Sie die 1.Zahl ein : ";
cin>>eingabe1;

do
{
cout<<"Geben Sie die gewuenschte Rechenoperation an (+ - * /): ";
cin>>rechenzeichen;
cout<<"Geben Sie eine zahl ein: ";
cin>>eingabe2;


switch(rechenzeichen)
{
case '+':
ergebnis=eingabe1+eingabe2;
break;

case '-':
ergebnis=eingabe1-eingabe2;
break;

case '*':
ergebnis=eingabe1*eingabe2;
break;

case '/':
ergebnis=eingabe1/eingabe2;
break;
}
cout<<"Ergebnis: "<<ergebnis << endl;

      


}while (rechenzeichen !='e');



cin.get();
cin.get();

return (0);
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.11.2010, 16:13 Uhr
Tommix



Hallo,

C++:
eingabe1 = ergebnis;


am Schleifenende?

- Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.11.2010, 17:20 Uhr
aii_thats_m3



hehe wie logisch danke
jetzt klappts
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.11.2010, 17:28 Uhr
aii_thats_m3



und wie mach ichs wenn ich ne exponentialfunktion einbauen will??
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.11.2010, 17:54 Uhr
TOSHMAX



Ich denke du meinst Potenzfunktionen. Dafür gibt es std::pow, du musst aber noch ein "#include <cmath>" hinzufügen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.11.2010, 18:23 Uhr
aii_thats_m3



okay, des std::pow wird bei mir als fehler angezeigt.
Oh man kp wie ich des hinbekommen soll
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
12.11.2010, 18:25 Uhr
aii_thats_m3



kannst du mir mal vllt ein kleines beispiel machen??
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
12.11.2010, 20:27 Uhr
aii_thats_m3



danke, hat sich erledigt ich bin drauf gekommen


#include <iostream>
#include <math.h>
using namespace std;


int main()
{
int eingabe1;
int eingabe2;
int ergebnis;
char rechenzeichen;


cout<<"Willkommen zum Taschenrechner" << endl;

long anz_Zahlen = 0;

cout<<"Geben Sie die 1.Zahl ein : ";
cin>>eingabe1;

do
{
cout<<"Geben Sie die gewuenschte Rechenoperation an (+ - * / ^): ";
cin>>rechenzeichen;
cout<<"Geben Sie eine zahl ein: ";
cin>>eingabe2;


switch(rechenzeichen)
{
case '+':
ergebnis=eingabe1+eingabe2;
break;

case '-':
ergebnis=eingabe1-eingabe2;
break;

case '*':
ergebnis=eingabe1*eingabe2;
break;

case '/':
ergebnis=eingabe1/eingabe2;
break;

case '^':
ergebnis = pow((double)ergebnis, (double)eingabe2);
break;
}
cout<<"Ergebnis: "<<ergebnis << endl;

eingabe1=ergebnis;


}while (rechenzeichen !='e');



cin.get();
cin.get();

return (0);
}
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
12.11.2010, 20:59 Uhr
~f.-th.
Gast


Kleine Kommentare



C++:
#include <iostream>
#include <cmath> // warum nicht so?

...

case '^':
ergebnis = pow((double)ergebnis, (double)eingabe2); // da sollte man genau hinsehen
break;
}
cout<<"Ergebnis: "<<ergebnis << endl;

eingabe1=ergebnis;


}while (rechenzeichen !='e');



cin.get(); // Warum ??
cin.get();

return (0);
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
14.11.2010, 12:43 Uhr
aii_thats_m3



Warum nicht so? ....
....Weil mein prof gemeint hat mit math.h
was ist an cmath und mat.h der unterschied???

da sollte man genau hinsehen....
....ist sicher das double gemeint oder?? das het er mir wo er mir den tipp gegeben hat extra dazugeschrieben dass ich es so verwenden soll. Gibt es was besseres??

Warum?...
...weil das programm sonst immer schließt und mir das letzte nicht ausgibt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: