Jörk Behrends: Mathematik in Perl

Beitrag lesen

hi!

Wie kann man in Perl numerische Variablen runden?
Die Syntax sieht dann so aus:
$rund = int ($krumm);

Das schneidet allerdings nur die Nachkommastellen ab. Richtig Runden kann man damit nicht. Für die Ausgabe zumindest kann man folgendermaßen runden:
  printf("%.3f", 3.1415926535);   # gibt 3,141 zurück
Das wird allerdings wohl nicht funktionieren, um Skalaren gerundete Werte zuzuweisen - oder ich weiß nicht, wie das funktioniert. Für weitere Informationen zum Runden siehe perlfaq4:

sprintf wäre hier die richtige Funktion! Mit ihr wird halt ein entsprechender Skalar erzeugt, der
dann auch weiterverarbeitet werden kann ...

$rund = sprintf("%.$nachkommastellen", $krumm);

ciao,
   Jörk