0
float f = 735.64;
int i = (int)f;
float f2 = f - i;
cout<<f2<<endl;
由F2輸出的價值根本就不是0.64而是要像0.6400015 我只是想在F2作爲或者0.64或0.640000值..所以能我這樣做沒有使用任何內置功能?小數部分從C++中的浮點值,沒有任何內在庫
謝謝。
float f = 735.64;
int i = (int)f;
float f2 = f - i;
cout<<f2<<endl;
由F2輸出的價值根本就不是0.64而是要像0.6400015 我只是想在F2作爲或者0.64或0.640000值..所以能我這樣做沒有使用任何內置功能?小數部分從C++中的浮點值,沒有任何內在庫
謝謝。
您必須明白,計算機中使用的每個數字都有錯誤,如果您找到該錯誤的值並從解中減去,那麼您將得到實際值。我建議你研究關於「相對誤差」和「絕對誤差」的所有內容,這些概念與數值數學有關
[每位計算機科學家應該瞭解的浮點算術](http://docs.oracle.com/ cd/E19957-01/806-3568/ncg_goldberg.html) – CoryKramer 2014-10-02 16:35:24
但它也可能是0.6399998。 – 2014-10-02 16:37:49
如果你使用'double'而不是'float',你會更接近。 – 2014-10-02 16:38:00