如何将浮点数舍入到目标C中的下一个整数值?
1.1 -> 2
2.3 -> 3
3.4 -> 4
3.5 -> 4
3.6 -> 4
1.0000000001 -> 2
答案 0 :(得分:124)
你想要天花板功能。像这样使用:
float roundedup = ceil(otherfloat);
答案 1 :(得分:2)
使用ceil()
功能。
有人在Objective C中写了一些小数学:http://webbuilders.wordpress.com/2009/04/01/objective-c-math/
答案 2 :(得分:2)
无法评论戴维斯的回答。他的第二个答案将不起作用,因为模数不适用于浮点值。不应该看起来像
if (originalFloat - (int)originalFloat > 0) {
originalFloat += 1;
round = (int)originalFloat;
}
答案 3 :(得分:2)
Roundup StringFloat 备注( 这不是最好的方式 )
语言 - Swift&目标C | xCode - 9.1
我做的是转换字符串>浮动> ceil> int>浮动>字符串
String Float 10.8 - > 11.0
String Float 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)))];
或
您可以像这样制作自定义功能
的夫特强>
func roundupFloatString(value:String)->String{
var result = ""
result = "\(Float(Int(ceil(Float(value)!))))"
return result
}
称之为So
AmountToCash = self.roundupFloatString(value: AmountToCash)
目标C
-(NSString*)roundupFloatString:(NSString *)value{
NSString *result = @"";
result = [NSString stringWithFormat:@"%f",float(int(ceil(value.floatValue)))];
return result;
}
称之为So
AmountToCash = [self roundupFloatString:AmountToCash];
祝你好运!并欢迎!支持我的回答!