最後的keep和dispose是取決於四捨五入前的結果。輸出前半段的浮點數是四捨五入後的結果。
如果%>=0則+0.0000001 <0則-0.0000001 可以除去誤差
完整程式碼
https://66lemon66.blogspot.com/2020/03/zerojudge-a647-c.html
最後的keep和dispose是取決於四捨五入前的結果。輸出前半段的浮點數是四捨五入後的結果。
如果%>=0則+0.0000001 <0則-0.0000001 可以除去誤差
請問為什麼這樣可以除去誤差呢?
我看了關於浮點數誤差的文章,我的理解是,像0.1要轉成二進制再提出來會變大,類似1.00000003這樣,那不是應該減去某個小值0.0000001這樣才比較接近除去誤差嗎?
求解感謝
最後的keep和dispose是取決於四捨五入前的結果。輸出前半段的浮點數是四捨五入後的結果。
如果%>=0則+0.0000001 <0則-0.0000001 可以除去誤差
請問為什麼這樣可以除去誤差呢?我看了關於浮點數誤差的文章,我的理解是,像0.1要轉成二進制再提出來會變大,類似1.00000003這樣,那不是應該減去某個小值0.0000001這樣才比較接近除去誤差嗎?
求解感謝
如果是10.0000003 >10 所以不用減 有誤差也無所謂
但如果是9.99999999 就必須+0.0000001 才會正確判斷(>=10)
負數同理