Генерация случайных чисел в языке Си: функции rand и srand
Функция rand() в Си является стандартной функцией для генерации псевдослучайных чисел. Она возвращает случайное число типа int в диапазоне от 0 до RAND_MAX, который зависит от реализации.
Для использования функции rand() в программах на Си необходимо подключить заголовочный файл stdlib.h, который содержит объявление функции. Пример использования функции rand() в коде на Си:
#include
#include
#include
int main() {
int i;
time_t t; //переменная для хранения секунд с 01.01.1970
//используем текущее время как начальное значение для генератора псевдослучайных чисел
srand((unsigned) time(&t));
// генерируем 10 псевдослучайных чисел в диапазоне от 0 до 99
for( i = 0 ; i < 10 ; i++ ) {
printf("%d\n", rand() % 100);
}
return 0;
}
В данном примере для инициализации генератора псевдослучайных чисел используется текущее время, полученное с помощью функции time(). Для того, чтобы каждый запуск программы давал разные псевдослучайные числа, в качестве начального значения генератора передается текущее время.
После инициализации генератора с помощью функции srand(), можно использовать функцию rand() для генерации псевдослучайных чисел в нужном диапазоне. В примере мы генерируем 10 чисел в диапазоне от 0 до 99, используя оператор остатка от деления на 100.
В результате выполнения программы мы получим 10 псевдослучайных чисел в заданном диапазоне.
Примечание: Код выполнен с помощью языковых конструкций Python.