String->Float , Float->String



  • Hallo zusammen!

    Da bin ich schon wieder!
    Diesmal kann ich wirklich nichts dafür! 😉

    Existiert bei einer vorliegenden TEdit-Instanz die Möglichkeit, den Attributwert des Attributs 'Text' ohne Konvertierungsfehler in einen Float-Wert umzuwandeln? Bisher hab ich die 'StrToFloat()'-Routine genutzt. Diese verursacht allerdings erhebliche Rundungsfehler.
    So wird aus dem Wert 5.0 z.B. 4.999999999275
    Existieren zuverlässigere Routinen? (Genauigkeit auf 6 Nachkommastellen wäre ganz angenehm)

    Danke!

    Grüße,
    TS++



  • TS++ schrieb:

    Diesmal kann ich wirklich nichts dafür! 😉

    Doch 😃

    TS++ schrieb:

    Bisher hab ich die 'StrToFloat()'-Routine genutzt. Diese verursacht allerdings erhebliche Rundungsfehler.

    Das liegt an der internen Darstellung von Fließkommazahlen, nicht an der Funktion.

    TS++ schrieb:

    Existieren zuverlässigere Routinen? (Genauigkeit auf 6 Nachkommastellen wäre ganz angenehm)

    Die Frage müßte also eigentlich lauten:
    Existiert ein Datentyp, der eine vorgegeben Genauigkeit garantiert?
    Leider kenne ich die Antwort nicht 😞
    Du kannst Dir natürlich selbst einen solchen Datentyp basteln, obwohl
    ich mir vorstellen könnte, daß es dafür schon Lösungen gibt.

    Gruß,

    Alexander


Anmelden zum Antworten