Objective-C算法的障碍

时间:2014-01-30 13:02:28

标签: objective-c

这段代码在震动事件的范围内,

if(i % 3) {
    self.Label.text = [NSString stringWithFormat:@"%d", y];
    y += 1;        
}
每当我达到3时,

y + = 1执行。

当我再次摇晃时,

y值又增加了1个 我现在等于4

所以现在i = 4,y = 2,我明白为什么y又添加了1,但我无法弄清楚如何避免它,请帮忙。

3 个答案:

答案 0 :(得分:6)

试试if (i % 3 == 0)。通过使用i % 3,当i可以整除时,只要i不能被3 整除而不是 ,这段代码就会执行由3。

答案 1 :(得分:1)

可能你正在寻找这个:

if(i % 3  == 0){

        self.Label.text = [NSString stringWithFormat:@"%d", y];
        y += 1;        
}

此代码仅在每3次迭代(或摇动或您正在做的任何事情)中增加y

答案 2 :(得分:0)

你可以试试这个:

if(i % 3 == 0) {
    NSLog(@"Value of i : %d and Y is : %@", i, [NSString stringWithFormat:@"%d", y]);
    self.Label.text = [NSString stringWithFormat:@"%d", y];
    y += 1;        
} else {
    NSLog(@"Value of i : %d and Y is : %@", i, [NSString stringWithFormat:@"%d", y]);
}