1. 程式人生 > >C# Mathf.Round() 四捨五入

C# Mathf.Round() 四捨五入

程式 != 數學

到今天才對這個不等式產生了深刻的認識,坑壞了


直入正題:

Mathf.Round(10.4); // 10
Mathf.Round(10.5); // 10
Mathf.Round(11.5); // 12

Mathf.Round(11.7); // 12


看了之後萬分懵逼,第二行咋就是10了呢,事實就是這樣。這就是程式設計的精髓之處 坑。

四捨五入時,如果小數位是5,那麼編譯器會自動識別這個小數的前後兩個整數。在這裡數是10.5那麼他的前後兩數就是10和11,而10是偶數,因此它的列印值就是10.

對的,沒錯。這裡編譯器會識別他的前後數,而他的最終答案就是那個偶數。(注意,這隻在小數是5的時候,其他情況下就是正常的小學數學的四捨五入了哈)。