小数点以下の数値が出た際に、切り上げ処理を行いたい。 Perlでは切り捨てはint $float といった形で行えるが、切り上げ用の関数が用意されていない(っぽい)。
POSIXモジュールを使用するか、次のような関数を用意しておくと重宝する。 ceil関数を定義し、これを呼び出せば良い。
サンプル
print ceil(5.0), "\n"; print ceil(5.1), "\n"; print ceil(5.555), "\n"; #-------------------------------------------# #切り上げ #-------------------------------------------# sub ceil { my $num = shift; my $val = 0; $val = 1 if($num > 0 and $num != int($num)); return int($num + $val); }
実行結果
5 6 6
もしくは、冒頭であげたPOSIXモジュールを使用する方法もある。こちらも結果は同じである。
use POSIX; print ceil(5.0), "\n"; print ceil(5.1), "\n"; print ceil(5.555), "\n";