Prty::Math - Mathematische Funktionen
Prty::Object
$gcd = $class->gcd($a,b);
Berechne den größten gemeinsamen Teiler (greatest common divisor) der beiden natürlichen Zahlen $a und $b und liefere diesen zurück. Die Methode ist nach dem Euklidschen Algorithmus implementiert.
$y = $class->roundTo($x,$n); $y = $class->roundTo($x,$n,$normalize);
Runde $x auf $n Nachkommastellen und liefere das Resultat zurück.
Ist $normalize "wahr", wird die Zahl nach der Rundung mit normalizeNumber() normalisiert.
Bei $n > 0 rundet die Methode mittels
$y = sprintf '%.*f',$n,$x;
bei $n == 0 mittels roundToInt().
$n = $class->roundToInt($x);
Runde Zahl $x zu ganzer Zahl und liefere das Resultat zurück, nach folgender Regel:
Für Nachkommastellen < .5 runde ab, für Nachkommastellen >= .5 runde auf. Für negative $x ist es umgekehrt.
Folgender Ansatz funktioniert nicht
$n = sprintf '%.0f',$x;
denn dieser gibt inkonsistente Ergebnisse
0.5 => 0 1.5 => 2 2.5 => 2
($minRounded,$maxRounded) = $class->roundMinMax($min,$max);
Die Methode rundet $min ab und $max auf, so dass geeignete Bereichsgrenzen für eine Diagrammskala entstehen.
Sind $min und $max gleich, schaffen wir einen künstlichen Bereich ($min-1,$max+1).
Die Rundungsstelle leitet sich aus der Größe des Bereichs $max-$min her.
8.53, 8.73 -> 8.5, 8.8
8.53, 8.53 -> 7, 10
1.102
Frank Seitz, http://fseitz.de/
Copyright (C) 2017 Frank Seitz
This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Prty, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Prty
CPAN shell
perl -MCPAN -e shell install Prty
For more information on module installation, please visit the detailed CPAN module installation guide.