Gleitkommarechnung Fehlerhaft, warum?...



  • Dann runde halt auf die 2. Nachkommastelle. Sollte ja bei Geldbeträgen legitim sein.



  • Also, mein Problem mit der Geldausgabe ist gelöst (mittels Runden mit 100).
    Meine letzt genannte Frage bezieht sich nicht mehr auf mein Programm, sondern ganz allgemein. Also wie bekomme ich das Problem mit Gleitkommazahlen in den Griff bei einem Programm zur Division? Denn hier weiß ich nicht im voraus wieviele Nachkommastellen der User mir eingibt. Geht dies nur indem ich es z.B. als string einlese und dann auswerte, oder gibt es da noch eine andere Lösung?

    mfg

    PS: Wie bekomme ich Quellcode vernünfig Strukturiert auf dieser Seite dargestellt. Diese Box " C/C++ " kapier ich nicht!



  • ima_ii schrieb:

    PS: Wie bekomme ich Quellcode vernünfig Strukturiert auf dieser Seite dargestellt. Diese Box " C/C++ " kapier ich nicht!

    Was gibts daran nicht zu kapieren? Du drückst einmal auf C/C++, dann erscheint sowas [ c p p ] (ohne Leerzeichen). Danach fügst du deinen Quellcode ein. Wenn du fertig bist, drückst du wieder auf C/C++ und die Endekennung erscheint [ / c p p ] (wieder ohne Leerzeichen. Wenn du schön artig deinen Spinat gegessen hast und dich stark genug fühlst, kannst du das natürlich auch manuell machen. 🙂 Um zu sehen, obs geklappt hat, benutze einfach die Vorschau.



  • teile die zahl in stellen vor und nach dem komma auf.
    10.23 x 2 =

    10 x 2 = 20 (plus)
    23 x 2 = 46 : (100) = 0.46 -->>
    20 + 0.46
    die addition ist nicht das problem.
    bei der aufteilung ist es auch egal wie viele nachkommastellen man hat. immer nur mit 100 mult. bringt dir bei 10.123456789 ja nichts.
    schreib dir eine klasse die du dann bei bedarf einbinden kannst.
    eine andere möglichkeit sehe ich im moment nicht. es gibt ja programme die das können, wie die heißen weiß ich aber nicht mehr. wie das realisiert wird weiß ich aber nicht.
    es gibt mit sicherheit einfachere methoden, ich kenn sie halt nur nicht.
    außerdem werden die compiler der zukunft das von alleine machen, das problem gibt es ja nicht erst seit gestern.
    google kannste selber suchen, bin zu faul.


Anmelden zum Antworten