我有例如下面的代碼:爲什麼使用real的計算給出了使用int的不同結果?
(a) writeln ('real => ', exp(3*Ln(3)):0:0); // return 27
(b) writeln ('int => ', int(exp(3*Ln(3))):0:0); // return 26
是一個錯誤? 函數calc 3^3(指數使用ln和exp函數),但是從real到int的轉換失敗;在(a)返回27的情況下,在(b)返回(26)的情況下,何時應該是27。 正如我可以解決它? 非常感謝您的幫助。
Ps:將結果賦給整數變量,使用trunc,結果不變。
負。對象之前已經討論過千次。 –
@Downvoter,在這種情況下,您應該投票結束重複問題的鏈接。 – Johan
[爲什麼是RoundTo(87.285,-2)=> 87.28]的結果的重複(http://stackoverflow.com/questions/5191235/why-is-the-result-of-roundto87-285-2- 87-28) – Johan