Taschenrechner programmieren

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von FAtheone.

    Taschenrechner programmieren

    Hallo,
    Ich habe mithilfe des Galileo openbook "Visual Basic 2010" zunächst die Grundlagen gelernt.
    Jetzt habe ich vor, mir einen Taschenrechner zu programmieren.
    Tutorials dazu gibt es zuhauf. Diese will ich mir aber nicht angucken, da ich selber drauf kommen will und da dabei der Lernefekkt mmn. größer ist, als wenn ich eben schnell alles nachgucke.


    Ich habe mir bisher nur vorerst einen abgespeckten Taschenrechner erstellt, welcher 2 Zahlenbuttons (1 und 2), 1 "+" Button und ein "=" Button erhält. Außerdem natürlich noch die Textbox.
    Meine Vorgehensweise wäre folgende:
    Ich erstelle eine Variable "x".
    Ich klicke auf den Button "1". In der Variable "x" wird nun der Wert "1" gespeichert.
    Anschließend klicke ich auf "+". Die Variable "x" bekommt einen weiteren Wert zugewiesen, nämlich "+". Die Variable "x" soll nicht überschrieben werden! Ihr aktueller Inhalt lautet also "x = 1+".
    Dann klicke ich auf den Button "2". In der Variable "x" wird nun der Wert "2" gespeichert. (x = 1+2)
    Wenn ich auf den Button "=" klicke, wird die Variable x ausgerechnet und dann in der Textbox ausgegeben.

    Ist die Denkweise so richtig?
    Falls ja, wie füge ich einer Variablen beliebig viele Werte hinzu?
    Du kannst in eine IntegerVariable nicht eine komplette Rechnung setzen (Also von einem String)
    Ich hätte es so gemacht:
    2 Textboxen
    4 Buttons (+, -, *, /)

    Dann 3 Integer Variablen (zahl1, zahl2, ergebnis)

    Dann jenach geklicktem Button ist die Variable Ergebnis entweder zahl1 + zahl2, zahl1 - zahl2, etc.
    Zum Schluss gibst du die Variable "ergebnis" aus.

    Und wenn Tutorials richtig durchgearbeitet werden und auch VERSTANDEN werden (und nicht nur kopiert), dann sind sie eine sehr gute Hilfe. ;)


    Grüsse
    Pascal
    Ja, vorausgesetzt, du erwartest nicht, dass wenn in der Variable 1+2 steht, es dir in der TextBox 3 ausgibt...

    Ist schön und gut, wenn du nachher noch einen Algorithmus zum Ausrechnen der Variable schreibst.

    EDIT: Zu langsam...
    Das ist gar nicht mal so schwer, wenn man Ahnung hat.
    Nun ja:

    1 TextBox (ReadOnly = True!)
    Buttons:
    10 Ziffernbuttons (0..9)
    4 Operatoren (/*-+)
    1 =
    1 AC
    1 ,-Button

    TextBox nur zur ausgabe,
    intern:

    Enumeration, die aktuelle Operation festhält: /,*,-,+,none
    Innere variable für die letzte eingegebene Zahl (Double)
    /*-+ setzen!! die operation und führen die letzte aus (eingabe 2+3* soll eine 6 anzegen und diese als nächstes multiplizeren)
    = rechnet aus und setzt operation auf none
    AC löscht den speicher und setzt auf none f. eingabekorrektur.

    Das war mal ein denkanstoss.

    BTW: Der Algo ist ziemlich leicht durch rekursion zu lösen.