我有一个简单的圆函数。它转向偶数。我想确保这个数字可被16整除。任何人都知道一种简单的方法可以将数字四舍五入到最接近的数字,可以被16整除吗?
$num=round(480/$other_num); //will output some number.
答案 0 :(得分:19)
$num = 39;
$num = round($num / 16) * 16; // 32
答案 1 :(得分:1)
也许您可以使用0xf进行位和数字并添加1?
答案 2 :(得分:1)
简单方法似乎除以16,然后使用“经典圆”并再乘以16。
$num=round(480/16)*16;
答案 3 :(得分:0)
function round16($num) {
if ($num % 16 == 0) return $num;
$num2 = $num;
$remain = 0;
do {
$remain = --$num % 16;
} while ($remain != 0 && $num >= $num2 - 7);
if ($remain == 0) return $num;
do {
$remain = ++$num2 % 16;
} while ($remain != 0);
return $num2;
}
可能不是最有效的方法。