2015-07-14 5 views
0

Я пытаюсь создать свое приложение о математическом тесте, когда я прихожу в раздел. Я знаю, что я не могу создать повторяющиеся бесконечные десятичные числа, и я должен держать числа случайными. Поэтому после того, как я сгенерировал числа из arc4random_uniform, я пытаюсь использовать круглую функцию. Но сказалRound не принимает тип аргумента (Int)

Не можете найти перегрузку раунда, который принимает тип аргумента (Int)

Как это исправить?

Вот мой код:

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)) 
} 

ответ

0

Вы должны передать значение Float в round, поскольку он не имеет прототипов с использованием Int значения:

var answer = round(Float(randomNumber)/Float(randomNumber2)) 
+0

закончится результат до представляет собой целое число или поплавок? – Justsoft

+0

Будет возвращено Float – tbaranes

+0

Могу ли я сделать это int или хотя бы оставить только одно десятичное место? – Justsoft

Смежные вопросы