WG: [Vienna-pm] [OT] Rundungsverhalten von Perl

Nagy Wilhelm Nagy at ubavie.gv.at
Fri Oct 24 05:30:54 CDT 2003



> Hallo Ihr,
> 
> um die spannenden rundungsdinger in perl auch noch zu beleuchten:
> 
> Ich erstelle unter anderem kaufmaennische applikationen mit perl und ist
> runden IMMER ein thema ;-)))
> 
> Um das probleme wie-wann wird gerunden in den griff zu bekommen habe ich
> folgenden (ich gestehe aus meinen IBM370-assembler/Macro11/COBOL
> vergangenheit) stammenden trick angewendet
> 
> ------------- 8< --------------
> use  strict;
> # ### jezza machen wir mal eine krumme zahl
> #
> my $fA = 5/3;  # ich habe mich fuer die 5/3 variante entschieden ;-)))
> print "was daraus wurde: $fA\n";
> 
> # ### und jetzt ein COBOL Trick ;-))
> #
> $fA += .5;
> print "als ganze Zahl: ".int($fA);
> 
> print "\n";
> 
> __END__
> 
> ------------- 8< --------------
> 
> 
> und begruede dies wie folgt:
> 
> * durch die addition von irgendeiner zahl kann ich das rundungverhalten
> beinflussen.
> Es gibt faelle wo zB. .3 oder irgendeine andere von kaufmaennischen
> rundungsverhalten abweichendes Verfahren angewendet werden muss. (kommt
> zugegebener massen eher selten, aber doch vor).
> 
> * Ich bin mir ziemlich sicher ;-) wass geanau passiert oder kann es
> jedenfalls nachvollziehen.
> 
> * Ich kann noch nachjustieren wenn mal nicht so klappt wie angenommen.
> 
> * Durch die umwandlung in (virtuelles)integer werden/sollten alle FP
> probleme geklaert sein/werden.
> 
> * Ich kann auch zB. leicheter auf 1000-er Runden:
> 
> $fA = 1565.43;
> print '~'.int(($fA + 500) / 1000)."-Tausend";
> 
> Liebe gruesse aus der welt des kommerz...
> 
> \^/ili
> 
> 
> 
> 
> 
> 
> -----Ursprüngliche Nachricht-----
> Von:	Peter J. Holzer [SMTP:hjp-vienna-pm-list at hjp.at]
> Gesendet am:	Donnerstag, 23. Oktober 2003 18:29
> An:	vienna-pm at mail.pm.org
> Betreff:	Re: [Vienna-pm] [OT] Rundungsverhalten von Perl
> 
> _______________________________________________
> Vienna-pm mailing list
> Vienna-pm at mail.pm.org
> http://mail.pm.org/mailman/listinfo/vienna-pm << Nachricht: Unbenannte
> Anlage >> 




More information about the Vienna-pm mailing list