Objective-C中的简单数学运算产生意外结果

时间:2010-04-04 14:50:37

标签: objective-c math

我在Objective-C中做了以下操作,期望180作为输出,但我得到150.有人可以解释我做错了吗?

(360 / 100) * 50

1 个答案:

答案 0 :(得分:14)

您(意外)使用integer division360 / 100正在返回3,然后3 * 50当然是150。要获得浮点结果,请先尝试将360100转换为浮点数,或者只使用文字浮点数 - 即360.0 / 100360 / 100.0或甚至{{1 }}

或者,正如@KennyTM在评论中指出的那样,您可以重新排序360.0 / 100.0这样的语句 - 如果浮点数因任何原因不可接受,这将特别有用。