web-dev-qa-db-ja.com

目的Cの次の整数に浮動小数点数を切り上げますか?

目的Cの浮動小数点を次の整数値に切り上げるにはどうすればよいですか?

1.1 -> 2
2.3 -> 3
3.4 -> 4
3.5 -> 4
3.6 -> 4
1.0000000001 -> 2
57
DNB5brims

天井機能が必要です。次のように使用します:

float roundedup = ceil(otherfloat);
125
Anthony Blake

Roundup StringFloat remarks(これは最善の方法ではありません
言語-Swift&Objective C | xCode-9.1
文字列>フロート> ceil> int>フロート>文字列を変換しました
String Float 10.8-> 11.0
文字列フロート10.4-> 10.0

スイフト

var AmountToCash1 = "7350.81079101"
AmountToCash1 = "\(Float(Int(ceil(Float(AmountToCash1)!))))"
print(AmountToCash1) // 7351.0


var AmountToCash2 = "7350.41079101"
AmountToCash2 = "\(Float(Int(ceil(Float(AmountToCash2)!))))"
print(AmountToCash2) // 7350.0

目的C

NSString *AmountToCash1 = @"7350.81079101";
AmountToCash1 = [NSString stringWithFormat:@"%f",float(int(ceil(AmountToCash1.floatValue)))];

[〜#〜] or [〜#〜]
カスタム関数を作成できます
Swift

func roundupFloatString(value:String)->String{
  var result = ""
  result = "\(Float(Int(ceil(Float(value)!))))"
  return result
}

そう呼ばれた

    AmountToCash = self.roundupFloatString(value: AmountToCash)

目的C

-(NSString*)roundupFloatString:(NSString *)value{
    NSString *result = @"";
    result = [NSString stringWithFormat:@"%f",float(int(ceil(value.floatValue)))];
  return result;
}

そう呼ばれた

    AmountToCash = [self roundupFloatString:AmountToCash];

がんばろう!そしてようこそ!私の答えをサポートしてください!

2
Muhammad Asyraf

デイビッドの答えをコメントできませんでした。モジュロは浮動小数点値では機能しないため、彼の2番目の答えは機能しません。のように見えるべきではない

if (originalFloat - (int)originalFloat > 0) {
    originalFloat += 1;
    round = (int)originalFloat;
}
2
lindinax

ceil()関数を使用します。

誰かがここのObjective Cの記事で少し数学をしました: http://webbuilders.wordpress.com/2009/04/01/objective-c-math/

2
Ray Toal