Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать, чтобы каждый раз были рандомные значение a и b?

ахахахах ахахахах Мастер (1457), закрыт 1 месяц назад
Лучший ответ
Следопыт Профи (776) 1 месяц назад
Возможно, до объявления переменных a и b вставить:

 srand(time(nullptr)); 

Импортировать:

 #include   
#include

Проверьте, оно ли, если правильно понимаю.
ахахахах ахахахахМастер (1457) 1 месяц назад
а что такое srand?
Остальные ответы
Андрей Панарин Искусственный Интеллект (226365) 1 месяц назад
Чтобы генератор случайных чисел при каждом запуске выдавал разные значения, его нужно сперва инициализировать каким-нибудь неповторяющимся значением. Например, текущим временем.

В документации к функции rand вижу такой пример:
 srand(time(nullptr));
int random_value = rand();
Один раз инициализируем через srand, а потом сколько угодно генерируем через rand.
Николай Веселуха Высший разум (360920) 1 месяц назад
 #include  
#include

using namespace std;

class Random {
public:
Random() {
random_device device;
gen.seed(device());
}
int next(int first, int last) {
uniform_int_distribution range(first, last);
return range(gen);
}
private:
mt19937 gen;
};

int main() {
system("chcp 1251 > nul");
Random rand;
while (true) {
const auto a = rand.next(0, 9);
const auto b = rand.next(0, 9);
cout << a << " * " << b << " = ?\nВведите ответ: ";
int c;
cin >> c;
puts(c == a * b ? "Верно!" : "Неверно");
}
}
Похожие вопросы