РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
115 of 815 menu

Функция 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,
    который генерирует недетерминированные случайные числа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить