08/08/25 17:16:13
うちの環境だと、>>319は正当が出て、
>>321は、print round 15 すると答えが10が返る。
# ま、原因は浮動小数点の処理にあるのは明白なんだけど。
>>321氏は「その環境では上手く行ってたとしても別環境では上手く
行かない事がある」程度には認識した方が良いかと。
>>323
何故に50行?ベタ実装してもそんなに行は食わないだろ?
sub round {
my $t = chop ( my $i = shift ) ;
my %h = map{ $_, $_ < 5 ? 0 : 10 } 0..9 ;
( $i || 0 ) * 10 + $h{$t} ;
}
printf "%d->%d\n", $_ ,round $_ for 0 .. 30 ;