2012-11-06 56 views
-1

我想四捨五入數值更大的價值。例如,如果我有234我想使它300和4436至5000.我已經嘗試過,但我可以四捨五入我的價值不是在一百幾百,而是在幾十。像我有一個價值7771它舍入到7900或7800,但我想它在8000四捨五入數目目標C中更大的價值

int temp = lroundf([[arrayPercentage objectAtIndex:i]floatValue]); 
maxPer = (((temp + 10)/10))*10; 
+0

什麼範圍內的數字你需要圍捕?只有數百或數千的數字?成千上萬?百萬?該方法需要多普遍? – rdelmar

+0

沒有特定的範圍。但最有可能的將會是成千上萬。 –

回答

1

如何:

-(void)roundUpNumber:(NSInteger) num { 
    NSInteger numLength = [[NSString stringWithFormat:@"%ld",num] length]; 
    NSInteger newNum = ceil(num/pow(10,numLength-1)) * pow(10,numLength -1); 
    NSLog(@"%ld",newNum); 
} 
1
int num, count = 0; 
    int originalNumber = 7771; 

    num = originalNumber; 
    while (num) { 
     num = num/10; 
     count ++; 
    } 

    int power = pow(10,(count -1)); 

    int firstDigit = originalNumber/power; 


    int finalNumber = (firstDigit + 1)* power; 

    NSLog(@"final result : %d",finalNumber); 
+0

謝謝。蘋果代表 –