Вопросы к Поиску с Алисой
Функция rand() без инициализации приводит к одинаковым последовательностям чисел, потому что по умолчанию она автоматически заполняется значением 1. stackoverflow.com stackoverflow.com
Это означает, что начальная точка алгоритма всегда одна и та же, поэтому для каждого вызова генерируется одинаковая последовательность чисел. stackoverflow.com
Чтобы получить разные последовательности, нужно установить начальное значение генератора случайных чисел с помощью функции srand(). stackoverflow.com otvet.mail.ru Например, можно установить начальное значение в текущее время или идентификатор процесса: srand(time(NULL)); или srand(getpid()); при запуске программы. stackoverflow.com
Также для решения проблемы srand() нужно вызывать один раз, а не каждый раз перед вызовом rand(). www.cyberforum.ru