поэтому моя цель в этом кодовом бите - случайным образом бросить два кубика, и, как мы все знаем, ваш обычный кубик имеет только 6 сторон, поэтому я импортировал Foundation для доступа к arc4random_uniform (UInt32). Я попытался использовать диапазон (1..7), чтобы избежать случайного получения 0, однако это вернуло ошибку, которая мне не очень понравилась. Я пробовал это сделать:
dice1 = arc4random_uniform(UInt32(1..7))
однако это вернулось
Не удалось найти перегрузку для init, которая принимает предоставленные аргументы
Я надеюсь, что этой информации достаточно, чтобы вы, потрясающие дебюты, могли мне помочь :)
Обратите внимание, я просто делаю это на детской площадке, чтобы попрактиковаться в быстроте. Не обязательно, чтобы я научился это делать; я просто возился перед тем, как приступить к созданию реальных приложений: D
//imports random number function
import Foundation
//creates data storage for dice roll
var dice1: UInt32 = 0
var dice2: UInt32 = 0
//counter variable
var i = 0
//how many times snake eyes happens
var snakeeyes = 0
//how many times a double is rolled
var `double` = 0
//rolls dice 100 times
while i < 100{
//from here
//sets dice roll
Это возвращает ошибку "Range $ T3" не конвертируется в UInt32.
dice1 = arc4random_uniform(1..7) dice2 = arc4random_uniform(1..7)
//checks for snake eyes
if dice1 == 1 && dice2 == 1 {
snakeeyes = snakeeyes + 1
}
//checks for doubles
if dice1 == dice2{
`double` = `double` + 1
}
//increases counter
i = i + 1
//to here
}
println("You got Snake Eyes \(snakeeyes) times.")
println("You got Doubles, \(`double`) times.")
u_int32_t arc4random_uniform(u_int32_t upper_bound);
dice1 = arc4random_uniform(6) + 1
чтобы получить диапазон от 1 до 6. Я не выполняю цель C iOS и не имею никаких знаний о быстром языке. Случайный метод должен вернуть вам 0-5, а +1 будет 1-6.