Jörg Wittemeier: cgi - Problem

Beitrag lesen

Hallo Stefan !
Erstmal Danke für die schnelle Antwort.
Dein Lösungsvorschlag ist mir auch schon in den Sinn gekommen. Aber habe auch schon mal statt 590.0000.... ein andere variante: 589.99999999999. Man kann nun durch kaufmänischen runden (*100 und int....) wieder auf 590.- gelangen, aber wo liegt der Grund für diese fehlerhafte Berechnung. Auf meinem alten Server lief alles einwandfrei. Es schleicht sich auch die Angst ein, daß bei anderen Rechnungsoperationen etwas falsch läuft.
590.00*1 muß doch 590.00 ergeben !  :-))
Gruß
Jörg

Hallo Joerg,

sorry, die andere Antwort ging daneben, der Finger war zu schnell auf der Enter-Taste.

Jetzt klappt eine einfache Multiplikation nicht mehr.
590.00 * 1 = 590.000000000000432 !!!!!!

Wenn Du das Ergebnis beispielsweise in einem Skalar namens $Ergebnis speicherst, kannst Du diesen wie einen String behandeln, also etwa mit regulaeren Ausdruecken, Suchen/Ersetzen und dergleichen, um ihn zu "stutzen". Beispiel:
$Ergebnis =~ s/.*//g;
Wenn in $Ergebnis zuvor 590.000000000000432 gespeichert ist, so ist es hinterher exakt 590

Viele Gruesse
  Stefan Muenz