Функция rand.Float32
Функция rand.Float32 генерирует псевдослучайное
число типа float32 в полуинтервале [0.0, 1.0).
Это означает, что она возвращает значение больше или равное
0.0 и строго меньше 1.0. Функция не принимает никаких
параметров и возвращает одно число с плавающей точкой.
Для получения случайных чисел с более высокой точностью
используйте функцию rand.Float64.
Синтаксис
rand.Float32()
Пример
Сгенерируем случайное число с плавающей точкой:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
res := rand.Float32()
fmt.Println(res)
}
Результат выполнения кода:
"0.12345678"
Пример
Сгенерируем несколько случайных чисел в цикле:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
for i := 0; i < 5; i++ {
res := rand.Float32()
fmt.Println(res)
}
}
Результат выполнения кода:
"0.9876543"
"0.45678902"
"0.2345679"
"0.6789012"
"0.345678"
Пример
Получим случайное число в диапазоне от 0 до 100:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
res := rand.Float32() * 100
fmt.Println(res)
}
Результат выполнения кода:
"42.56789"
Пример
Получим случайное целое число с помощью преобразования:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
res := int(rand.Float32() * 10)
fmt.Println(res)
}
Результат выполнения кода:
"7"
Смотрите также
-
функцию
rand.Float64,
которая генерирует случайное число с двойной точностью -
функцию
rand.Intn,
которая генерирует случайное целое число в диапазоне -
функцию
rand.Perm,
которая возвращает случайную перестановку чисел -
функцию
rand.Shuffle,
которая перемешивает элементы в случайном порядке