Ein kleiner Rechner den ich proggrammiert habe:
Rechner
-
-
Hallo SgtTarek,
auf ein Initiativposting dieser Art erwartest du sicher eine Antwort, oder?
Und jetzt sag nicht, dass das nicht deine Absicht war - musste extra meine Windowskiste hochfahren, Virenscanner updaten (hätt ja sein können ;)) und deshalb dreimal dem Kasten beim Booten zugucken ... so - drum gibts hier auch nen Kommentar - des hast jetzt davon!
1) die exe ist a bisserl groß für meinen Geschmack (kenn das aus meiner QBasic-Zeit - zum Glück lange her!). Das hier war wohl VC++ im Debug-Mode, oder?
2) die Funktionsvielfalt ist jetzt nicht gerade überwältigend ... aber für'n Anfang schon mal was.
Tips zum Weitermachen:
Erstmal, dies hier ist ein Forum für C/C++ - d.h. hier wird C/C++ "gesprochen" und nicht x86-Binary! Ich halte es für erkenntnisreicher, wenn du den Sourcecode postest und Fragen stellst.
"Rechner" (bzw. Ausrucks-Parser) werden nur noch extrem selten von Hand geschrieben. Als Spielerei ok, aber falls du dich ernsthaft für das Thema "Rechner" interessierst, empfehl ich dir mal Yacc anzugucken.
grüßeMicrosoft gives you Windows, UNIX gives you the whole house. -
Hallo also benutzt hab ich den Compiler Dev-C++ von Bloodshell
Den Quelltext hab ich nicht mehr da ich ihn weiterentwickelt habe ich hänge die exe Datei an und geb hier den Code rein wenn du willst:
Quellcode
- #include <cstdlib>
- #include <iostream>
- /*
- Name: Taschenrechner
- Version: 0.6.5.5
- Copyright: 2006 by SgtTarek
- Author: SgtTarek
- Date: 13.03.06 19:34
- Description: Taschenrechner(Funktionen: Addition, Subtrahaktion, Multiplikation,
- Division, Potenzierung, Prozentsatz-errechnung, Anteil-errechnung, Grundwert-errechnung)
- */
- using namespace std;
- double addieren (double z1, double z2)
- {
- return (z1 + z2);
- }
- double subtrahieren (double z1, double z2)
- {
- return (z1 - z2);
- }
- double dividieren (double z1, double z2)
- {
- return (z1 / z2);
- }
- double multiplizieren (double z1, double z2)
- {
- return (z1 * z2);
- }
- int main(int argc, char *argv[])
- {
- double zahl1, zahl2, ergebnis, i, b, c;
- int a, d;
- cout << "Geben sie an was sie berechnen wollen:\n";
- cout << "(+ = 1, - = 2, * = 3, / = 4, ^ = 5, % = 6)\n";
- cin >> a;
- cout << "\n";
- if(a==1)
- {
- cout << "Summand: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Summand: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Summe:\n\n";
- ergebnis = addieren(zahl1,zahl2);
- cout << zahl1 << " + " << zahl2 << " = " << ergebnis << endl;
- }
- else if (a==2)
- {
- cout << "Minuend: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Subtrahend: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Differenz:\n\n";
- ergebnis = subtrahieren(zahl1, zahl2);
- cout << zahl1 << " - " << zahl2 << " = " << ergebnis << endl;
- }
- else if (a==3)
- {
- cout << "Faktor : \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Faktor: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Produkt:\n\n";
- ergebnis = multiplizieren(zahl1, zahl2);
- cout << zahl1 << " * " << zahl2 << " = " << ergebnis << endl;
- }
- else if (a==4)
- {
- cout << "Divident: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Divisor: \n";
- cin >> zahl2;
- if (zahl2==0)
- {
- cout<<"ERROR DIVIDIERT MIT 0\n";
- }
- else
- {
- cout <<"\n";
- cout<<"Quotient:\n\n";
- ergebnis = dividieren(zahl1, zahl2);
- cout << zahl1 << " / " << zahl2 << " = " << ergebnis << endl;
- }
- }
- else if (a==5)
- {
- cout << "Basis: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Exponent: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Potenz:\n\n";
- ergebnis=1;
- while (i<zahl2)
- {
- ergebnis = ergebnis*zahl1;
- i++;
- }
- cout << zahl1 <<" hoch " << zahl2 << " = " << ergebnis << endl;
- }
- else if (a==6)
- {
- cout << "Geben sie an was sie berechnen wollen\n";
- cout << "Anteil= 1, Grundwert= 2, Protzentsatz= 3\n\n";
- cin >> d;
- if (d==1)
- {
- cout << "Protzentsatz: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Grundwert: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Anteil:\n\n";
- c=zahl1*zahl2;
- ergebnis=c/100;
- cout << ergebnis << endl;
- }
- else if (d==2)
- {
- cout << "Protzentsatz: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Anteil: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Grundwert:\n\n";
- c=zahl2/zahl1;
- ergebnis=c*100;
- cout << ergebnis << endl;
- }
- else if (d==3)
- {
- cout << "Anteil: \n";
- cin >> zahl1;
- cout << "\n";
- cout << "Grundwert: \n";
- cin >> zahl2;
- cout << "\n";
- cout<<"Prozentsatz:\n\n";
- c=zahl1/zahl2;
- ergebnis=c*100;
- cout << ergebnis << endl;
- }
- else
- {
- cout << "ERROR KEINE FUNKTION ANGEGEBEN";
- }
- }
- else
- {
- cout<<"ERROR KEINE FUNKTION ANGEGEBEN\n";
- }
- cout<<"\n";
- system("PAUSE");
- return EXIT_SUCCESS;
- }
achja ich wollt fragen wie man ne Wurzel ausrechnen kann -
-
ich würd die frage nach operation mit eimem switch machen
hier die lösung die wir in der schule gemacht haben:
kann halt nicht so viel
Quellcode
- /****************************************************
- Dateiname: rmgz.cpp
- Erstellung: 2. 3. 2006
- Funktion: Rechnen mit Ganzen Zahlen
- Autor: Wallinger andreas
- Letzte Bearbeitung: 15.04.2006
- **************************************************/
- #include <iostream.h>
- #include <stdlib.h>
- #include <conio.h> // getche ()
- #include <ctype.h> // toupper ()
- #define ADD 43 //Tastatur-Code für +
- #define SUBTRACT 45 //Tastatur-Code für -
- #define MULTI 42 //Tastatur-Code für *
- #define DIVE 47 //Tastatur-Code für /
- #define MODO 37 //Tastatur-Code für %
- using namespace std;
- int main()
- {
- int x, y, erg; // Variablen für 1. und 2. Zahl und Ergebnis
- int op; // Variable für Rechenzeichen bei der EINgabe
- char c,jn; // Variable für Rechenzeichen bei der AUSgabe
- char uE = -127; //Definition von ü (klein)
- char UE = -102; //Definition von Ü (groß)
- char aE = -124; //Definition von ä (klein)
- char AE = -114; //Definition von Ä (groß)
- char oE = -108; //Definition von ö (klein)
- char OE = -103; //Definition von Ö (groß)
- do
- {
- cout << "Programm zum Berechnen einer der 4 Grundfunktionen" << endl;
- cout << "" << endl;
- cout << "" << endl;
- cout << "Geben sie bitte zwei Zahlen ein: \n" << endl;
- cin >> x;
- cout << endl;
- cout << "OK und jetzt die zweite: \n" << endl;
- cin >> y;
- cout << endl;
- do
- {
- cout << "Bitte Operator eingeben: \n" << endl;
- op = getche(); // Ein Zeichen über die Tastatur einlesen und ausgeben
- cout << endl;
- switch (op)
- {
- case ADD: erg = x+y;
- c = '+'; break;
- case SUBTRACT: erg = x-y;
- c = '-'; break;
- case MULTI: erg = x*y;
- c = '*'; break;
- case DIVE: erg = x/y;
- c = '/'; break;
- case MODO: erg = x%y;
- c = '%'; break;
- default: cout << "/a/anicht gut !\n";
- cout << endl;
- cout << "Unter dem Operator versteht man das Rechenzeichen, also +, -, *, / .\n" << endl;
- }
- } while ( op != '+' && op != '-' && op != '*' && op != '/' );
- cout << x << " " << c << " " << y << " = " << erg;
- if (op == '/')
- {
- cout << " und " << x%y << " Rest" << endl;
- }
- cout << endl << endl;
- do
- {
- cout << "Wollen Sie noch einmal rechnen?\n( ja = j, nein = n)\n" << endl;
- jn = getche();
- jn = toupper(jn);
- cout << endl << endl;
- if ( jn != 'J' && jn != 'N')
- {
- cout << "/a/aFalsch eingegeben!!!/nbitte nur j oder n/n";
- }
- }while (jn != 'J' && jn != 'N');
- } while ( jn == 'J'); // Wiederhohlung des ganzen Programms
- cout << "bitte eine Taste dr" << uE << "cken";
- getche();
- }
mfg Xaw.4 -
ja ist besser als mit den ganzen if schleifen in meiner neueren Version ist das schon drinnen
-
Teilen
- Facebook 0
- Twitter 0
- Google Plus 0
- Reddit 0
-
Benutzer online 1
1 Besucher