Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Taschenrechner Progi

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 <
000
08.08.2007, 17:33 Uhr
Seppel



Hallo hab einen Taschenrechner geschreiben.
Ums eleganter zumachen werd ich vlt. ne switchcase anstatt der if konstruktion einbauen.
Dann später noch einen Durchschnittsrechner und prozent rechner und ... rein.

So hier ma der Code.

C++:
#include <iostream>
#include <string>

using namespace std;

int schluss;
long double ergebnis=0,zahl=0;
char rechenzeichen;

int main()
{
    cout << " Taschenrecher \n ------------------------------- \n\n > ";
    cout << " Gib den Term an inklusive = an!\n  ";
    cout << " Term: ";
    cin >> ergebnis;
    while (true)
    {
        cin >> rechenzeichen;
        if (rechenzeichen == '=')
        {
            cout << " Ergebnis = "<<ergebnis<<endl;
            break;
        }
        cin >> zahl;
        if (rechenzeichen == '+')
        {
            ergebnis = ergebnis + zahl;
        }
        if (rechenzeichen == '-')
        {
            ergebnis = ergebnis - zahl;
        }
        if (rechenzeichen == '*')
        {
            ergebnis = ergebnis * zahl;
        }
        if (rechenzeichen == '/')
        {
            ergebnis = ergebnis / zahl;
        }
    }
    
  cout << "Beliebige Zahl eingeben, dann enter zum Beenden druecken!";
cin >> schluss;
return 0;
}


Dieser Post wurde am 08.08.2007 um 17:37 Uhr von Seppel editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
08.08.2007, 20:29 Uhr
mischa
Fragender


Hmm schön und was willst du jetzt genau?
--
Latein Unterricht ist die spätere Rache der Römer an den Germanen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
08.08.2007, 21:38 Uhr
0xdeadbeef
Gott
(Operator)


Besonders weit wirst du auf die Art mit deinem Rechner nicht kommen, denke ich - spätestens, wenn du das ganze auf mehrere Operatoren ausweiten willst und dir 3 + 4 * 5 unterkommt, fliegt das auseinander (Punkt vor Strich).

Wenn das am Ende das machen soll, was ich vermute, wirst du um einen echten Parser nicht herumkommen - ich empfehle dafür die Benutzung von Boost.Spirit, oder in C halt bison/flex. Bei Boost.Spirit ist übrigens genau so eine Art Rechner als Beispielprogramm enthalten

...oh, und lass das mit den globalen Variablen sein. Das macht nur Ärger. Ich frage mich langsam, welches dämliche Tutorial sowas macht - das kommt mir in letzter Zeit immer häufiger unter die Augen.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ 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: