поэтому моя цель в этом кодебе заключается в случайном броске двух кубиков, и, как мы все знаем, ваш обычный умирающий имеет только 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.")