2つの整数の間でランダムな値を生成しようとしています。私はこれを試しました、0から始まります、
let randomNumber = arc4random_uniform(10)
println(randomNumber)
ただし、10〜50の値が必要です。
これを試して
let randomNumber = arc4random_uniform(40) + 10
println(randomNumber)
一般的な形で
let lower : UInt32 = 10
let upper : UInt32 = 50
let randomNumber = arc4random_uniform(upper - lower) + lower
println(randomNumber)
新しいrandom()
メソッドを使用してSwift 4.2に回答すると、簡単になります。
let randomInt = Int.random(in: 10...50)
単純なパラメーターで再利用可能な関数が必要な場合:
func generateRandomNumber(min: Int, max: Int) -> Int {
let randomNum = Int(arc4random_uniform(UInt32(max) - UInt32(min)) + UInt32(min))
return randomNum
}
乱数ジェネレータのより簡単な方法
func random(min: Int, max: Int) -> Int {
return Int(arc4random_uniform(UInt32(max - min + 1))) + min
}