Kzq*_*qai 5 php algorithm math significant-digits
是否有任何光滑的方式向下舍入到最近的重要数字?
所以:
0->0
9->9
10->10
17->10
77->70
114->100
745->700
1200->1000
Run Code Online (Sandbox Code Playgroud)
?
$numbers = array(1, 9, 14, 53, 112, 725, 1001, 1200);
foreach($numbers as $number) {
printf('%d => %d'
, $number
, $number - $number % pow(10, floor(log10($number)))
);
echo "\n";
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,当$ number为0时,这会失败,但它确实会产生正整数的预期结果.这是一个仅限数学的解决方案.