Функция rand.Uint32
Функция rand.Uint32 возвращает псевдослучайное 32-битное целое число без знака.
Значение равномерно распределено в диапазоне от 0 до 4 294 967 295 включительно.
Для работы с генератором необходимо импортировать пакет math/rand.
Перед использованием рекомендуется инициализировать генератор с помощью rand.Seed.
Синтаксис
rand.Uint32()
Пример
Давайте сгенерируем одно случайное 32-битное число и выведем его на экран:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
res := rand.Uint32()
fmt.Println(res)
}
Результат выполнения кода:
"3829405612"
Пример
Сгенерируем несколько случайных чисел и сохраним их в слайс:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
numbers := make([]uint32, 5)
for i := range numbers {
numbers[i] = rand.Uint32()
}
fmt.Println(numbers)
}
Результат выполнения кода:
[3214567890 123456789 987654321 2345678901 3456789012]
Пример
Используем полученное число для вычисления остатка от деления, чтобы получить случайное число в диапазоне от 0 до 99:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
random := rand.Uint32()
res := random % 100
fmt.Println(res)
}
Результат выполнения кода:
"42"
Смотрите также
-
функцию
rand.Intn,
которая генерирует целое число в диапазоне от 0 до n-1 -
функцию
rand.Uint64,
которая генерирует 64-битное случайное число -
функцию
rand.Int31,
которая генерирует 31-битное случайное число -
функцию
rand.Float64,
которая генерирует случайное число с плавающей точкой