Функция rand
Функция rand возвращает псевдослучайное целое число
в диапазоне от 0 до константы RAND_MAX.
Функция не принимает параметров. Чтобы каждый раз при запуске
программы получать новую последовательность чисел, перед первым
вызовом rand следует инициализировать генератор с помощью
функции srand, передав ей в качестве параметра
начальное значение (например, текущее время).
Чтобы получить случайное число в нужном диапазоне, используют
остаток от деления: rand() % n даёт число от 0
до n - 1. Для сдвига диапазона к результату прибавляют
нужное минимальное значение.
Синтаксис
int rand();
Пример
Давайте получим случайное число и выведем его на экран:
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int res = rand();
cout << res << endl;
return 0;
}
Результат выполнения кода:
1804289383
Пример
Давайте получим случайное число в диапазоне от 1
до 100 включительно:
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int res = rand() % 100 + 1;
cout << res << endl;
return 0;
}
Результат выполнения кода:
42
Пример
Давайте инициализируем генератор текущим временем, чтобы при каждом запуске программы получать новую последовательность случайных чисел:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand(time(0));
for (int i = 0; i < 5; i++) {
cout << rand() % 10 << " ";
}
cout << endl;
return 0;
}
Результат выполнения кода:
3 7 1 9 4
Смотрите также
-
функция
srand,
которая инициализирует генератор случайных чисел -
класс
mt19937,
который является современным генератором случайных чисел -
класс
uniform_int_distribution,
который задаёт равномерное распределение целых чисел -
класс
random_device,
который генерирует недетерминированные случайные числа