Javascript rechnet falsch mit den Kommazahlen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Javascript rechnet falsch mit den Kommazahlen

    Hi, ich versuch eine Liste mit Kommazahlen zu machen, aber es kommt immer nur Blödsinn dabei raus

    PHP-Code:
        form '<table>';
        for(
    =Startwert;i<=Endwert;i+=Schrittweite)
        {
            
    form+='<tr><td>'+i+'</td></tr>';
        } 
    Mit den Werten Startwert = -1 , Endwert = 5 und Schrittweite 0.1 kommt das raus:

    -1
    -0.9
    -0.8
    -0.7000000000000001
    -0.6000000000000001
    -0.5000000000000001
    -0.40000000000000013
    -0.30000000000000016
    -0.20000000000000015
    -0.10000000000000014
    -1.3877787807814457e-16
    0.09999999999999987
    0.19999999999999987
    0.2999999999999999
    0.3999999999999999
    0.4999999999999999
    0.5999999999999999
    0.6999999999999998
    0.7999999999999998
    0.8999999999999998
    0.9999999999999998
    1.0999999999999999
    1.2
    1.3
    ....

    Kann mir da bitte jemand helfen? thx schonmal!

  • #2
    Das ist wohl die Ungenauigkeit von Fliesskommazahlen in JS. Schau mal hier http://www.dcljs.de/faq/antwort.php?...hnen_rechnen#E vorbei.

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      das ist leider so kann man kaum ändern!

      Möglichkeiten:
      - du rundest i
      - wenn du i nicht ausgibst und es nur dein Endwert betrifft kannst du auch i < Endwert+0.1 machen
      Killerspiele sollten in der Größenordnung von Kinder********************grafie eingeordnet werden.(G. Beckstein)
      - ...und solche Behauptungen in "falsches Resourcenmanagement"

      Kommentar


      • #4
        Also ich finde das

        -0.20000000000000015
        -0.10000000000000014
        -1.3877787807814457e-16 <-------------

        Nicht wirklich was mit ungenau zu tun hat
        gruss Chris

        [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

        Kommentar

        Lädt...
        X