第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 php 中按字母順序顯示 html li 元素

在 php 中按字母順序顯示 html li 元素

PHP
慕尼黑的夜晚無繁華 2023-03-11 15:27:39
我正在用 php 編寫一些代碼,我發(fā)現(xiàn)了這個問題:$a = 4.60;$b = 5.05; $c = 2.60;$r = ($a + $b + $c) * 0.1;echo "r: $r\n";echo "r sprintf1: " . sprintf("%.2f",$r) . "\n";echo "r sprintf2: " . sprintf("%.2f",1.225) . "\n";輸出是:r: 1.225r sprintf1: 1.22r sprintf2: 1.23如您所見,當(dāng)結(jié)果應(yīng)該相同時,sprintf 的行為有所不同。這是為什么?
查看完整描述

2 回答

?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗 獲得超5個贊

因為浮點值不精確,用它們做數(shù)學(xué)運算只會加劇不精確性。


$a = 4.60;

$b = 5.05;?

$c = 2.60;


$r = ($a + $b + $c) * 0.1;


// greatly increase the floating point display precision

ini_set('precision', 30);


var_dump( $a, $b, $c, $r, 1.225 );

輸出:


float(4.59999999999999964472863211995)

float(5.04999999999999982236431605997)

float(2.60000000000000008881784197001)

float(1.22499999999999986677323704498)

float(1.22500000000000008881784197001)

這就是為什么你永遠(yuǎn)不應(yīng)該使用浮點數(shù)來代表金錢。


查看完整回答
反對 回復(fù) 2023-03-11
?
飲歌長嘯

TA貢獻(xiàn)1951條經(jīng)驗 獲得超3個贊

當(dāng)您計算浮點數(shù) (?$r = ($a + $b + $c) * 0.1;) 時,它的結(jié)果不完全是 1.225,而是類似于1.22499999999999986677323704498。這就是它發(fā)生的原因。

所以永遠(yuǎn)不要相信浮點數(shù)結(jié)果的最后一位,也不要直接比較浮點數(shù)是否相等。


查看完整回答
反對 回復(fù) 2023-03-11
  • 2 回答
  • 0 關(guān)注
  • 128 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號