wenn du in den beiden ifs "return"st, kannst du dir die pararight Variable sparen
Neue Antwort erstellen
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
Neu erstellte Beiträge unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.
Die letzte Antwort auf dieses Thema liegt mehr als 365 Tage zurück. Das Thema ist womöglich bereits veraltet. Bitte erstellen Sie ggf. ein neues Thema.
Vorherige Beiträge 2
-
-
ja, seit gestern schreib ich an mdcalc, einem taschenrechner, der seine eingaben per kommandozeilen parameter erwartet (damit ich ihn einfach per exec -o per xchat aufrufen kann)
hier sind die sourcen:
C-Quellcode
- /* mdclac by Martin Dannehl, (c)2005 - 3of5@unimatrix-01.org
- Weiterverbreitung und Weiterbearbeitung unter Beibehaltung des Copyrights erlaubt*/
- #include <iostream>
- #include <iomanip>
- #include <cmath>
- using namespace std;
- int main (int argc,char* argv[])
- {
- bool pararight = false;
- if (argc == 1) //Überprüfen ob Parameteranzahl korrekt, wenn nicht Meldung und Ende
- {
- cout << "mdcalc (c) 2005 Martin Dannehl" << endl
- << "Usage: Wert1 Operand Wert2" << endl
- << "Zulässige Operanden: " << endl
- << "+ (Summe)" << endl
- << "- (Differenz)" << endl
- << "x (Produkt)" << endl
- << "/ (Quotient)" << endl
- << "^ (Potenz)" << endl
- << "_ (Wurzel)" << endl;
- pararight = true;
- }
- if (argc == 4)
- {
- pararight = true;
- double Wert1,Wert2; //Einlesen der Parameter in Variablen
- char operand;
- Wert1 = atof(argv[1]);
- Wert2 = atof(argv[3]);
- operand = argv[2][0];
- switch (operand) //Auswählen und berechnen anhand des Operanden
- {
- case '+': cout << Wert1 << " + " << Wert2 << " = " << Wert1+Wert2 << endl;break;
- case '-': cout << Wert1 << " - " << Wert2 << " = " << Wert1-Wert2 << endl;break;
- case 'x': cout << Wert1 << " x " << Wert2 << " = " << Wert1*Wert2 << endl;break;
- case '/': cout << Wert1 << " / " << Wert2 << " = " << Wert1/Wert2 << endl;break;
- case '^': cout << Wert1 << " ^ " << Wert2 << " = " << pow(Wert1,Wert2) << endl;break;
- case '_': cout << Wert1 << " _ " << Wert2 << " = " << pow(Wert1,(1/Wert2)) << endl;break;
- default: cout << "Fehlerhafter Operand!" << endl
- << "Zulässig: + - x / ^" << endl;
- }
- }
- if (!pararight)
- cout << "Fehlerhafte Parameteranzahl!" << endl << "Bitte in angeben: Wert1 Operand Wert2" << endl;
- }
als nächstes bastel ich wohl eine fakultätsberechnung dazu und vllt das parsen von termen, was stanny schon im irc vorgeschlagen hatte
da hab ich nur noch net so ne rechte idee wie ich das implementieren soll