我不确定这个标题是否正确,但这基本上就是我想要做的。
我正在尝试检查一个数字是否小于 100,如果不是,我想知道我需要将其除以 10 的哪个因子以低于 100,即对于 7923,因子为 100 以使其成为 79.23,对于452,936,489 该因子将是 10,000,000 以使其成为 45.2936489。
是否有一个函数或一段脚本可以做到这一点?
干杯
$number = 452936489;
$factor = pow(10, ceil(log($number/100) / log(10)));
好的。基础数学:
您需要找到 10 的除数的幂,将您的数字减少到 100 以下,因此日志业务计算出将 10 变为原始数字所需的 10 的确切分数幂。结果大约是 6.6560373....
将其四舍五入为 7,然后用于将 10 提高到该次方。
10^7 = 10,000,000
452936489 / 10^7 = 45.2936489
<?
$num = 7923;
$x = 10;
while(true)
{
$result = $num/$x;
if($result < 100)
{
die($x."");
}
else
{
$x *= 10;
}
}
?>