Метод, который я разработал до сих пор, таков:
func randRange (lower : Int , upper : Int) -> Int {
let difference = upper - lower
return Int(Float(rand())/Float(RAND_MAX) * Float(difference + 1)) + lower
}
Это генерирует случайные целые числа между нижним и верхним включительно.