0
我想通過刪除小數部分來舍入數字數據。我不想使用「sprintf」。有沒有其他的方法可以在Perl中完成。請幫我解決一下這個。 例如, 如果值是4.5,則輸出應該是5,4.2和4分別是4.7和5。 請幫我解決這個問題。通過刪除perl中的小數部分來捨去數字的方法
我想通過刪除小數部分來舍入數字數據。我不想使用「sprintf」。有沒有其他的方法可以在Perl中完成。請幫我解決一下這個。 例如, 如果值是4.5,則輸出應該是5,4.2和4分別是4.7和5。 請幫我解決這個問題。通過刪除perl中的小數部分來捨去數字的方法
您可以用int
關鍵字來做到這一點。
my $value = 4.5;
print int($value + 0.5);
然而,int
Perl文檔警告不要使用int
四捨五入:
返回EXPR的整數部分。如果省略EXPR,則使用$ _。 您不應該使用此函數進行舍入:一個因爲它將 截斷爲0,而兩個因爲機器表示 浮點數有時會產生 違反直覺的結果。例如,「int(-6.725/0.025)」產生-268而不是正確的-269;那是 ,因爲它實際上更像-268.99999999999994315658。 通常,「sprintf」,「printf」或「POSIX :: floor」和 「POSIX :: ceil」函數將比int()更好地爲您服務。
是它的重複的一個。 –