iphone浮动VS整数四舍五入?

好了,从我的理解,一个整数,是一小部分会被四舍五入的一种方式或其他,这样,如果一个公式来与说5/6 - 它会自动将其舍入到1。我有一个计算:

xyz = ((1300 - [abc intValue])/6) + 100;

XYZ被定义为一个NSInteger,ABC是通过UIPicker是选择了一个NSString。 我想计算(1300 - [ABC的intValue]),加入1〜100的各6台下方1300例如,1255应该导致XYZ为100和1254的值应导致值为101。

现在,我明白我的上述公式是因为四舍五入原则错了,但我正在逐渐从节目本身的一些疯狂的结果。 当我拳打在1259 - 我得到106。当我拳打在1255 - 我得到了107.为什么会表现得呀?

--------------解决方案-------------

你的理解是错误的。 整数除法截断:

5 / 6 == 0

(1300 - 1259) / 6 == 41 / 6 == 6

(1300 - 1255) / 6 == 45 / 6 = 7

您可以使用:

xyz = ((1300.0 - [abc intValue])/6) + 100;

并作出XYZ一个NSDouble 这将确保它确实浮点除法。

您还可能有混淆的数字和时间。 1255是45低于1300,不低于5 :-)

分类:iphone 时间:2015-03-15 人气:0
本文关键词: iPhone,目标C
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.251 (s). 10 q(s)