【发布时间】:2021-03-05 09:26:24
【问题描述】:
/我尝试在 C++ 上创建一个猜数游戏,我继续编写一个程序,生成一个从 1 到 1000 的随机数,并设置一个获胜条件。也就是说,如果用户输入随机生成的数字,那么他们就赢了。但我也想设置一个失败的条件。例如,用户在输掉游戏之前只有 10 次尝试。我有一种感觉,答案很简单,但我根本无法投入其中。\
#include <string>
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void tips()
{
std::cout << "Pay attention to what the system inputs.\n";
std::cout << "If Too High, Lower you're number base on your latest guess\n";
std::cout << "If Too Low, Guess a higher number base on your latest guess\n";
}
void help()
{
std::cout << "The Instruction of the game is to guess the random generated number from one to a thousand\n";
}
void quit_game()
{
std::cout << "You have quited the Game\n";
}
void play_game()
{
int random = rand() % 1001;
std::cout << "Guess A Number:\n";
while(true)
{
int guess;
std::cin >> guess;
if(guess == random)
{
std::cout << "You Are Victorous!\n";
break;
} else if (guess < random)
{
std::cout << "Too low\n";
}else
{
std::cout << "Too high\n";
}
}
}
int main ()
{
srand(time(NULL));
int selected;
do
{
std::cout << "0. Quit Game" << std::endl << "1. Play Game\n";
std::cout << "2. Help" << std::endl << "3. Tips\n";
std::cin >> selected;
switch (selected)
{
case 0:
quit_game();
break;
case 1:
play_game();
break;
case 2:
help();
break;
case 3:
tips();
break;
default:
std::cout << "You have entered an invalid option\n";
}
}
while (selected != 0);
}
【问题讨论】: