Zahlen addieren sich miteinander

  • VB.NET

Es gibt 47 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Zahlen addieren sich miteinander

    Ich würde gerne einen Taschenrechner machen wo man z.b 15+15 und dann noch mal + 15 rechnen kann. Z.b 15 + 11 + 17 - 19 - 18 + 18 usw. Die erste Funktion dass man z.b 150 + 30 oder halt - 30 rechnen kann, hab ich schon.
    Ich würde mich sehr um Hilfe freuen LG. Danke im voraus.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Jimpo“ ()

    EaranMaleasi schrieb:





    naja halt mit vb.net also in einer Form.

    Bin erst seit paar Minuten auf dem Forum registriert, hab nicht genau gefunden wo ich nachfragen soll.
    Kein Problem, hab mich bereits darum gekümmert, nun aber zu deiner Frage:

    Hast du ein konkretes Problem, dass dich daran hindert mit deinem Taschenrechner voran zu kommen? Aus deinem Eingangspost wird nicht ganz klar wo nun das Problem liegt. Zeig doch auch einmal was du bereits versucht hast, um zu deinem Ziel zu kommen.
    Zeigen wird schwierig, weil es sind 300 Zeilen + aber ich kann ja mal das wichtigste zeigen.

    VB.NET-Quellcode

    1. Function rechnen(WertA As Double, WertB As Double, rechenoperator As String) As Double
    2. Select Case rechenoperator
    3. Case "+"
    4. rechnen = WertA + WertB
    5. Case "-"
    6. rechnen = WertA - WertB
    7. Case "x"
    8. rechnen = WertA * WertB
    9. Case "/"
    10. rechnen = WertA / WertB
    11. Case "%"
    12. rechnen = WertA * 100 / WertB
    13. Case Else
    14. End Select
    15. End Function



    Ich hab einen Taschenrechner erstellt, der Funktioniert soweit auch ganz gut, nun zum Problem.

    Ich kann zwar 2 Zahlen miteinander addieren, aber wenn ich versuche z.b 15 + 20 + 20 zu addieren funktioniert es nicht. Ich habe die Operatoren auf Buttons gesetzt z.b plus.text, minus.text usw. Ich würde gerne mehr Zahlen als nur 2 zusammen addieren können. Also nicht 1+1 sondern 1+1 und dann nochmal aufs "+" drücken und noch eine 3 eingeben = 1 + 1 + 3. Wenn ich dann aufs "=" drücke wird es gerechnet. Wenn es immer noch nicht verständlich ist, sag bescheid ich versuche es dann nochmal zu erklären. Danke für deine Zeit
    Dieser Weg wird kein leichter sein … siehe hier.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @VaporiZed
    Danke für den Link zum Beitrag, ich glaube aber, dass das nicht genau das ist wonach ich suche.
    Wenn ich wüsste, wie man hier Screenshots einbindet könnte ich es euch anhand des Windows 10 Taschenrechners zeigen.

    Vollzitat durch Erwähnung ersetzt ~EaranMaleasi


    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „EaranMaleasi“ ()





    Jimpo schrieb:

    ich glaube aber, dass das nicht genau das ist wonach ich suche.
    Dir ist vermutlich selbst klar, dasses illusorisch wäre, von uns zu erwarten, dass wir genau das parat haben, was du dir vorstellst - oder?

    Ich könnte theoretisch noch was anbieten, wo man einen kompletten mathematischen Ausdruck eingeben kann, und bei Calculate_Click spuckt er das Ergebnis aus.
    Weiters kann meine Vorlage auch mit Variablen arbeiten - also es ist noch bisserl mehr als der Win10-Rechner (glaub ich - tatsächlich kenne ich den Win10-Rechner garnet).

    Aber ich spare mir, den Link herauszusuchen. Ich weiss ja, dasses nicht genau das ist, was du suchst.
    Ausserdem ist der Code durchaus anspruchsvoll - weil eben das Thema sehr anspruchsvoll ist.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()

    Dir ist vermutlich selbst klar, dasses illusorisch wäre, von uns zu erwarten, dass wir genau das parat haben, was du dir vorstellst - oder?


    Ich erwarte es ja auch nicht. Ich habe bloß gesagt dass es falsch verstanden wurde was ich meinte. Ich hab nur gefragt, es tut mir aber leid, wenn meine Äußerung nicht angebracht war.


    Aber ich spare mir, den Link herauszusuchen. Ich weiss ja, dasses nicht genau das ist, was du suchst.​


    Vielen dank, dass ihr versucht mir zu helfen, aber auf einer falsch Formulierten Aussage so rum zureiten finde ich leider nicht angemessen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Jimpo“ ()

    @Jimpo Zitiere keine Posts, die über den Deinen stehen. Wenn Du ein Foren-Mitglied ansprechen willst, geht das so:
    @Jimpo
    Beschreibe algorithmisch, worin Dein Problem besteht.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @RodFromGermany

    Ich hab schon versucht das Problem so genau wie möglich zu erklären, ich weis leider nicht wie ich es noch genauer erklären könnte.
    Könntet ihr mir bitte erklären, wie man hier Screenshots einfügt, weil STRG + V geht leider nicht. MfG Jimpo

    Zahlen mehrmals zusammen addieren oder subtrahieren usw.

    ch hab einen Taschenrechner erstellt, der Funktioniert soweit auch ganz gut, nun zum Problem.Ich kann zwar 2 Zahlen miteinander addieren, aber wenn ich versuche z.b 15 + 20 + 20 zu addieren funktioniert es nicht. Ich habe die Operatoren auf Buttons gesetzt z.b plus.text, minus.text usw. Ich würde gerne mehr Zahlen als nur 2 zusammen addieren können. Also nicht 1+1 sondern 1+1 und dann nochmal aufs "+" drücken und noch eine 3 eingeben = 1 + 1 + 3. Wenn ich dann aufs "=" drücke wird es gerechnet. Wenn es immer noch nicht verständlich ist, sag bescheid ich versuche es dann nochmal zu erklären. Danke für deine Zeit.


    Ich schaffe es nicht es ungefähr so wie im Anhang zu machen.


    VB.NET-Quellcode

    1. Function rechnen(WertA As Double, WertB As Double, rechenoperator As String) As Double
    2. Select Case rechenoperator
    3. Case "+"
    4. rechnen = WertA + WertB
    5. Case "-"
    6. rechnen = WertA - WertB
    7. Case "x"
    8. rechnen = WertA * WertB
    9. Case "/"
    10. rechnen = WertA / WertB
    11. Case "%"
    12. rechnen = WertA * 100 / WertB
    13. Case Else
    14. End Select
    15. End Function
    16. Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
    17. If e.KeyCode = Keys.Add Then
    18. plus.PerformClick()
    19. ElseIf e.KeyCode = Keys.Subtract Then
    20. minus.PerformClick()
    21. ElseIf e.KeyCode = Keys.enter Then
    22. istgleich.PerformClick()
    23. ElseIf e.KeyCode = Keys.Divide Then
    24. geteilt.PerformClick()
    25. ElseIf e.KeyCode = Keys.Multiply Then
    26. mal.PerformClick()
    27. ElseIf e.KeyCode = Keys.p Then
    28. prozent.PerformClick()
    29. ElseIf e.KeyCode = Keys.X Then
    30. mal.PerformClick()
    31. End If
    32. End Sub
    33. Private Sub ergebnis_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ergebnis.KeyPress
    34. If ergebnis.Text.Contains(",") = False And Not ergebnis.TextLength = 0 Then
    35. Select Case Asc(e.KeyChar)
    36. Case 44, 48 To 57, 8
    37. Case Else
    38. e.Handled = True
    39. End Select
    40. Else
    41. Select Case Asc(e.KeyChar)
    42. Case 48 To 57, 8
    43. Case Else
    44. e.Handled = True
    45. End Select
    46. End If


    Themen zusammengefasst ~VaporiZed
    Bilder
    • {AD9B779D-5FEE-450A-A9FF-486534EF22E6}.png.jpg

      19,65 kB, 308×488, 80 mal angesehen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    @Jimpo Bevor Du weitere Threads eröffnest, solltest Du Dich etwas mit der Funktionsweise solcher Taschenrechner befassen:
    de.wikipedia.org/wiki/Umgekehrte_polnische_Notation
    Wenn Du das verstanden hast, fang neu an, einen Taschenrechner zu programmieren.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich hab ein neues eröffnet, damit ich den Screenshot zeigen kann.

    Danke für die Antwort.

    Einen neuen Taschenrechner werde ich leider nicht erstellen, aber ich werde mir auf jeden Fall das durchlesen was Sie mir geschickt haben.

    MfG
    Ich würde ja gerne mehrere zahlen miteinander addieren können aber ich finde im Internet keinerlei beispiele oder Tipps dafür. Ich weis nicht genau wie ich vorgehen soll/kann.


    Ich habe es schon versucht jedem Wert ein Value zuzuweisen, das hat aber leider nicht funktioniert.

    z.b

    16 + 57 + 39 = 112

    16 = Wert1
    57 = Wert2
    39 = Wert3
    112 = Ergebnis


    Ich hatte schon eine Idee, ich weiß aber nicht genau wie ich sie umsetzen soll:

    Abfrage wann "+" gedrückt wird. Wenn "+" das zweite mal gedrückt wird ----> befehl, der ein "+" ins 2.Operator Feld schreibt -----> bei einem "="
    ---> wert1 + wert2 + ergebnis

    Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von „Jimpo“ ()

    Hallo Jimpo,

    das hier war mal eine Aufgabe für unseren IT-Student(2 Jahre breits im Studium)
    ...rechne die MwST aus von einem Betrag und addiere noch falls Versandkosten anfallen
    diese hinzu...
    er hat 3-4 Tage gebraucht, und war immer noch falsch, also kopfhoch und nicht aufgeben

    das hier ist die korrigierte Version, Teile davon kannst du ableiten di du brauchts (addieren etc...)

    VB.NET-Quellcode

    1. Option Strict On
    2. Imports System.Globalization
    3. Public Class Form1
    4. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    5. Dim Netto As Decimal
    6. Dim MwST As Decimal
    7. Dim Versandkosten As Decimal
    8. '
    9. If Not Decimal.TryParse(Me.txtVersandkosten.Text, NumberStyles.Number, _
    10. CultureInfo.CurrentCulture, Versandkosten) Then
    11. txtVersandkosten.Text = CStr(0)
    12. End If
    13. If Decimal.TryParse(Me.txtNetto.Text, NumberStyles.Number, _
    14. CultureInfo.CurrentCulture, Netto) AndAlso _
    15. Decimal.TryParse(Me.txtMwST.Text, NumberStyles.Number, _
    16. CultureInfo.CurrentCulture, MwST) Then
    17. Dim AnteilMwST As Decimal = Math.Round(Netto * MwST * 0.01D, 2, _
    18. MidpointRounding.AwayFromZero)
    19. Dim Gesamt As Decimal = Netto + AnteilMwST + Versandkosten
    20. Me.txtSteuerAnteil.Text = AnteilMwST.ToString("N2")
    21. Me.txtGesamt.Text = Gesamt.ToString("N2")
    22. Me.txtVersandkosten.Text = Versandkosten.ToString("N2")
    23. End If
    24. End Sub
    25. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    26. txtNetto.Text = CStr(995.23)
    27. txtMwST.Text = CStr(19)
    28. End Sub
    29. End Class


    viel Erfolg