Как сгенерировать уникальное случайное число в начале программы, затем получить номер и вызвать его в функции - PullRequest
0 голосов
/ 06 апреля 2020

Я делаю небольшую игру на C ++ для забавы и делаю случайное число от 0 до 100, которое представляет собой число угроз, которые вам нужно решить, это работает, но я создал функцию HomeScreen (), которая будет вызываться, если пользователь хочет go вернуться назад и увидеть угрозы или набрать команды, ну, проблема в том, что когда я вызвал свой int для угроз, он создал новое случайное число, которое испортило всю игру, потому что это стерло или ускорило бы пользователей прогресс. Мне нужно знать, как узнать, сколько угроз было сгенерировано при запуске игры, получить их и отобразить в функции HomeScreen ().

main.cpp (the first place where the int and random value is assigned)

int threats; srand(time(NULL)); threats = rand() % 100 + 1;

HomeScreen() Function
int threats;
srand(time(NULL));
threats = rand() % 100 + 1;
system("CLS");
std::cout << "| HackersBeGone | Home Page | " << std::endl;
std::cout << "Threats = " << threats << std::endl; // Here is displays another random number when I 
                                                   // need it to be the same number from main.cpp

1 Ответ

0 голосов
/ 06 апреля 2020

Вы можете использовать глобальную переменную для этого. Хотя это не лучшая практика, это одно из самых простых решений. Присвойте сгенерированное случайное число этой глобальной переменной и повторно используйте его через эту переменную.

Кроме этого, вы можете просто использовать тот же начальный номер srand, что и в своей main. Но это было бы неортодоксально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...