<?phpfor($i=100.001;$i<100.527;$i=$i+0.001){
if((($i-100)*1000%100)==0){
echo "ren ".$i."00.pdg ".$i."00<br>";
}
else if((($i-100)*1000%10)==0){
echo "ren ".$i."0.pdg ".$i."0<br>";
}
else{
echo "ren ".$i.".pdg ".$i."<br>";
}}
?>
把<=100.526改成<100.527就行了!应该是精度的问题。在C语言时中,两个浮点数是不能比较相等的!
if((($i-100)*1000%100)==0){
echo "ren ".$i."00.pdg ".$i."00<br>";
}
else if((($i-100)*1000%10)==0){
echo "ren ".$i."0.pdg ".$i."0<br>";
}
else{
echo "ren ".$i.".pdg ".$i."<br>";
}}
?>
把<=100.526改成<100.527就行了!应该是精度的问题。在C语言时中,两个浮点数是不能比较相等的!
for ($i=1; $i<=526; $i++) {
printf("ren 100.%03d.pdg 100.%03d<br>", $i, $i);
}
?>
i = 100.52500000000001989520
i = 100.52600000000002467004
你的终止条件是$i<=100.526
php的高精度计算应使用“BC 高精确度函式库”
js无法满足高精度计算的要求
<?php
for($i=100.521;$i<=100.526;$i=bcadd($i,0.001,3)){
...