ホームページ >バックエンド開発 >PHPチュートリアル >数値の四捨五入に関する問題

数値の四捨五入に関する問題

WBOY
WBOYオリジナル
2016-06-13 12:08:58973ブラウズ

数値の丸めの問題
例 $a=1.2;
echo $a; //ここでは 1.5 と表示したい

$a=1.6;
echo $a; / ここでは2と表示させたい

つまり、$aの小数点以下の値が5未満(0を除く)の場合は5を押すと表示され、値が表示されたら5を押します。小数点が 5 より大きい場合は、通常の四捨五入
を押します-----解決策のアイデア----------------------

<br />function test($val){<br />	$x=explode('.',sprintf("%.1f", $val));<br />	$a=$x[0];<br />	$d=$x[1];<br />	if($d>0 && $d<5){<br />		$r=$a+0.5;<br />	}else{<br />		$r=round($val);<br />	}<br />	return $r;<br />}<br /><br />echo test(1);//1<br />echo test(1.11);//1.5<br />echo test(1.5);//2<br />echo test(1.6);//2<br />

-----ソリューションのアイデア----------------------
作成あなたのニーズは明確です
for($i=1; $i<2; $i+=0.1)<br />  printf("%.1f : %s\n", $i, ceil($i * 2) / 2);<br />
1.0 : 1<br />1.1 : 1.5<br />1.2 : 1.5<br />1.3 : 1.5<br />1.4 : 1.5<br />1.5 : 2<br />1.6 : 2<br />1.7 : 2<br />1.8 : 2<br />1.9 : 2<br /><br />

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。