-2

浮動小数点値を小数点以下 2 桁まで丸めようとしています。私はobjective-cを使用しています

例: 1.47567 は 1.47 のようになります。助けてください

ありがとうございます。

4

5 に答える 5

2
    float num = 1.47567;
    num *= 100;
    if(num >= 0) num += 0.5; else num -= 0.5;
    long round = num;
    num = round;
    num /= 100;
    NSLog(@"%.2f",num);
于 2012-11-21T11:00:19.560 に答える
1
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];  
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];  
[formatter setMaximumFractionDigits:2];

NSString *formattedNumber = [formatter stringFromNumber:@(self.speed)];
于 2013-03-26T12:40:39.213 に答える
0
double value = 1.47567;
double roundedValue = round(value * 100.0) / 100.0;

もちろん、100.0の代わりに名前付き定数を使用できます。これは単なるデモです。

于 2012-11-21T11:13:41.197 に答える
-1
NSLog(@"%.2f", 1.47567);

小数点以下 2 桁に丸めます。「カット」したい場合は、さまざまなオプションがあります。例えば:

NSLog(@"%.2f", floor(1.47567 * 100) / 100);
于 2012-11-21T10:56:47.643 に答える