Re: [問題] 關於物件

看板java作者 (ゆびさきミルクティー)時間18年前 (2006/03/29 00:36), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/5 (看更多)
※ 引述《cywec (Lovin'Wheet)》之銘言: : 問題是這樣的 : 以下是我的程式碼 : public float len(float num1, float num2){ : float length = 0; : length = num1 - num2; : if( length < 0 ) : return -length; : else : return length; : } : 這是物件包裝的一個函式 : 當主程式傳來的值如為 5,4 : 可以正確的回傳值 1 : 不過當我的值傳來如為 5.5 , 5.4 : 則回傳的值會變成 0.099999905 而不是 0.1 : 找了半天一直看不到原因 : 用System.out.println去簡查傳進的值都沒有問題 : 不過輸出就怪怪的 浮點數精確度的問題 (這好像是很多programming language的老問題了..?) 主要是因為電腦float/double的bit數不夠的關係 (就像我們把1/3寫成小數會寫成0.3333333333 如果就真的拿這個小數值去乘3 我們會得到0.9999999999 而不是1) 其實你這裡的誤差值是9.5*10^-8 已經很小了 可以忽略它 -- **** 說: 不要期望一個精神力差不多已經見底的人阿Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.240.54
文章代碼(AID): #14AMNmj0 (java)
討論串 (同標題文章)
文章代碼(AID): #14AMNmj0 (java)