我想创建一个关于除法的数学测试的应用程序。我知道我不能创造无限重复的小数,我必须保持这些数字是随机的。因此,在我从arc4random_uniform中生成数字后,我试图使用round函数。但是上面写着
找不到接受参数类型(Int)的重载for round
如何解决这个问题?
下面是我的代码:
var randomNumber:UInt32 = arc4random_uniform(999)
var randomNumber2:UInt32 = arc4random_uniform(999)
// 1000 is my maximum number for now.
randomNumber += 1
randomNumber2 += 1
if operation.text == "/" {
if randomNumber < randomNumber2 {
var between:UInt32 = 1000 - randomNumber2
randomNumber = randomNumber2 + arc4random_uniform(between - 1)
// making sure that randomNumber is not smaller than randomNumber2,
// therefore all results are positive.
}
var answer:Int = round(Int(randomNumber)/Int(randomNumber2))
}
您必须将Float
值传递给round
,因为它没有使用Int
值的原型:
var answer = round(Float(randomNumber)/Float(randomNumber2))