Rechner

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • 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üße
    Microsoft 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

    1. #include <cstdlib>
    2. #include <iostream>
    3. /*
    4. Name: Taschenrechner
    5. Version: 0.6.5.5
    6. Copyright: 2006 by SgtTarek
    7. Author: SgtTarek
    8. Date: 13.03.06 19:34
    9. Description: Taschenrechner(Funktionen: Addition, Subtrahaktion, Multiplikation,
    10. Division, Potenzierung, Prozentsatz-errechnung, Anteil-errechnung, Grundwert-errechnung)
    11. */
    12. using namespace std;
    13. double addieren (double z1, double z2)
    14. {
    15. return (z1 + z2);
    16. }
    17. double subtrahieren (double z1, double z2)
    18. {
    19. return (z1 - z2);
    20. }
    21. double dividieren (double z1, double z2)
    22. {
    23. return (z1 / z2);
    24. }
    25. double multiplizieren (double z1, double z2)
    26. {
    27. return (z1 * z2);
    28. }
    29. int main(int argc, char *argv[])
    30. {
    31. double zahl1, zahl2, ergebnis, i, b, c;
    32. int a, d;
    33. cout << "Geben sie an was sie berechnen wollen:\n";
    34. cout << "(+ = 1, - = 2, * = 3, / = 4, ^ = 5, % = 6)\n";
    35. cin >> a;
    36. cout << "\n";
    37. if(a==1)
    38. {
    39. cout << "Summand: \n";
    40. cin >> zahl1;
    41. cout << "\n";
    42. cout << "Summand: \n";
    43. cin >> zahl2;
    44. cout << "\n";
    45. cout<<"Summe:\n\n";
    46. ergebnis = addieren(zahl1,zahl2);
    47. cout << zahl1 << " + " << zahl2 << " = " << ergebnis << endl;
    48. }
    49. else if (a==2)
    50. {
    51. cout << "Minuend: \n";
    52. cin >> zahl1;
    53. cout << "\n";
    54. cout << "Subtrahend: \n";
    55. cin >> zahl2;
    56. cout << "\n";
    57. cout<<"Differenz:\n\n";
    58. ergebnis = subtrahieren(zahl1, zahl2);
    59. cout << zahl1 << " - " << zahl2 << " = " << ergebnis << endl;
    60. }
    61. else if (a==3)
    62. {
    63. cout << "Faktor : \n";
    64. cin >> zahl1;
    65. cout << "\n";
    66. cout << "Faktor: \n";
    67. cin >> zahl2;
    68. cout << "\n";
    69. cout<<"Produkt:\n\n";
    70. ergebnis = multiplizieren(zahl1, zahl2);
    71. cout << zahl1 << " * " << zahl2 << " = " << ergebnis << endl;
    72. }
    73. else if (a==4)
    74. {
    75. cout << "Divident: \n";
    76. cin >> zahl1;
    77. cout << "\n";
    78. cout << "Divisor: \n";
    79. cin >> zahl2;
    80. if (zahl2==0)
    81. {
    82. cout<<"ERROR DIVIDIERT MIT 0\n";
    83. }
    84. else
    85. {
    86. cout <<"\n";
    87. cout<<"Quotient:\n\n";
    88. ergebnis = dividieren(zahl1, zahl2);
    89. cout << zahl1 << " / " << zahl2 << " = " << ergebnis << endl;
    90. }
    91. }
    92. else if (a==5)
    93. {
    94. cout << "Basis: \n";
    95. cin >> zahl1;
    96. cout << "\n";
    97. cout << "Exponent: \n";
    98. cin >> zahl2;
    99. cout << "\n";
    100. cout<<"Potenz:\n\n";
    101. ergebnis=1;
    102. while (i<zahl2)
    103. {
    104. ergebnis = ergebnis*zahl1;
    105. i++;
    106. }
    107. cout << zahl1 <<" hoch " << zahl2 << " = " << ergebnis << endl;
    108. }
    109. else if (a==6)
    110. {
    111. cout << "Geben sie an was sie berechnen wollen\n";
    112. cout << "Anteil= 1, Grundwert= 2, Protzentsatz= 3\n\n";
    113. cin >> d;
    114. if (d==1)
    115. {
    116. cout << "Protzentsatz: \n";
    117. cin >> zahl1;
    118. cout << "\n";
    119. cout << "Grundwert: \n";
    120. cin >> zahl2;
    121. cout << "\n";
    122. cout<<"Anteil:\n\n";
    123. c=zahl1*zahl2;
    124. ergebnis=c/100;
    125. cout << ergebnis << endl;
    126. }
    127. else if (d==2)
    128. {
    129. cout << "Protzentsatz: \n";
    130. cin >> zahl1;
    131. cout << "\n";
    132. cout << "Anteil: \n";
    133. cin >> zahl2;
    134. cout << "\n";
    135. cout<<"Grundwert:\n\n";
    136. c=zahl2/zahl1;
    137. ergebnis=c*100;
    138. cout << ergebnis << endl;
    139. }
    140. else if (d==3)
    141. {
    142. cout << "Anteil: \n";
    143. cin >> zahl1;
    144. cout << "\n";
    145. cout << "Grundwert: \n";
    146. cin >> zahl2;
    147. cout << "\n";
    148. cout<<"Prozentsatz:\n\n";
    149. c=zahl1/zahl2;
    150. ergebnis=c*100;
    151. cout << ergebnis << endl;
    152. }
    153. else
    154. {
    155. cout << "ERROR KEINE FUNKTION ANGEGEBEN";
    156. }
    157. }
    158. else
    159. {
    160. cout<<"ERROR KEINE FUNKTION ANGEGEBEN\n";
    161. }
    162. cout<<"\n";
    163. system("PAUSE");
    164. return EXIT_SUCCESS;
    165. }
    Alles anzeigen


    achja ich wollt fragen wie man ne Wurzel ausrechnen kann
    Dateien
    • Rechner.zip

      (133,07 kB, 295 mal heruntergeladen, zuletzt: )
    Meine Sprachen: C, C++,C# PHP
    E-Mail | MSN: gre.burgstaller@aon.at
  • 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

    1. /****************************************************
    2. Dateiname: rmgz.cpp
    3. Erstellung: 2. 3. 2006
    4. Funktion: Rechnen mit Ganzen Zahlen
    5. Autor: Wallinger andreas
    6. Letzte Bearbeitung: 15.04.2006
    7. **************************************************/
    8. #include <iostream.h>
    9. #include <stdlib.h>
    10. #include <conio.h> // getche ()
    11. #include <ctype.h> // toupper ()
    12. #define ADD 43 //Tastatur-Code für +
    13. #define SUBTRACT 45 //Tastatur-Code für -
    14. #define MULTI 42 //Tastatur-Code für *
    15. #define DIVE 47 //Tastatur-Code für /
    16. #define MODO 37 //Tastatur-Code für %
    17. using namespace std;
    18. int main()
    19. {
    20. int x, y, erg; // Variablen für 1. und 2. Zahl und Ergebnis
    21. int op; // Variable für Rechenzeichen bei der EINgabe
    22. char c,jn; // Variable für Rechenzeichen bei der AUSgabe
    23. char uE = -127; //Definition von ü (klein)
    24. char UE = -102; //Definition von Ü (groß)
    25. char aE = -124; //Definition von ä (klein)
    26. char AE = -114; //Definition von Ä (groß)
    27. char oE = -108; //Definition von ö (klein)
    28. char OE = -103; //Definition von Ö (groß)
    29. do
    30. {
    31. cout << "Programm zum Berechnen einer der 4 Grundfunktionen" << endl;
    32. cout << "" << endl;
    33. cout << "" << endl;
    34. cout << "Geben sie bitte zwei Zahlen ein: \n" << endl;
    35. cin >> x;
    36. cout << endl;
    37. cout << "OK und jetzt die zweite: \n" << endl;
    38. cin >> y;
    39. cout << endl;
    40. do
    41. {
    42. cout << "Bitte Operator eingeben: \n" << endl;
    43. op = getche(); // Ein Zeichen über die Tastatur einlesen und ausgeben
    44. cout << endl;
    45. switch (op)
    46. {
    47. case ADD: erg = x+y;
    48. c = '+'; break;
    49. case SUBTRACT: erg = x-y;
    50. c = '-'; break;
    51. case MULTI: erg = x*y;
    52. c = '*'; break;
    53. case DIVE: erg = x/y;
    54. c = '/'; break;
    55. case MODO: erg = x%y;
    56. c = '%'; break;
    57. default: cout << "/a/anicht gut !\n";
    58. cout << endl;
    59. cout << "Unter dem Operator versteht man das Rechenzeichen, also +, -, *, / .\n" << endl;
    60. }
    61. } while ( op != '+' && op != '-' && op != '*' && op != '/' );
    62. cout << x << " " << c << " " << y << " = " << erg;
    63. if (op == '/')
    64. {
    65. cout << " und " << x%y << " Rest" << endl;
    66. }
    67. cout << endl << endl;
    68. do
    69. {
    70. cout << "Wollen Sie noch einmal rechnen?\n( ja = j, nein = n)\n" << endl;
    71. jn = getche();
    72. jn = toupper(jn);
    73. cout << endl << endl;
    74. if ( jn != 'J' && jn != 'N')
    75. {
    76. cout << "/a/aFalsch eingegeben!!!/nbitte nur j oder n/n";
    77. }
    78. }while (jn != 'J' && jn != 'N');
    79. } while ( jn == 'J'); // Wiederhohlung des ganzen Programms
    80. cout << "bitte eine Taste dr" << uE << "cken";
    81. getche();
    82. }
    Alles anzeigen


    mfg Xaw.4