#include<iostream>
#include<ctime>
#include<cstdlib>
using namespace std;
int main(){
int gnumber, rnumber;
char choice;
int tries;
do {
cout << "Welcome to the Number Guessing Game!" << endl;
cout << endl; // breakline
cout << "How many tries: ";
cin >> tries;
cout << endl;
while (tries > 0){
srand(time(NULL));
rnumber = rand() % 99;
cout <<"Enter an integer greater than or equal to 0 and less than 100:";
cin >> gnumber;
system("cls");
if (tries != 1){
if (gnumber < 100 && gnumber >= 0){
if (gnumber == rnumber){
cout << "Congratulations! You've guessed the number." << endl;
tries--;
cout << "Remaining tries: " << tries << endl;
}
else if (gnumber > rnumber){
cout << "Your guess is higher than the number." << endl;
tries--;
cout << " Guess Again!" << endl;
cout << "Remaining tries: " << tries << endl;
}
else{
cout << "Your guess is lower than the number." << endl;
tries--;
cout << " Guess Again!" << endl;
cout << "Remaining tries: " << tries << endl;
}
}
else
cout << "Must greater or equal to 0 and lesser than 100!" << endl;
}
else
{
cout << "Game over!" <<" The number is: " << rnumber << endl;
cout << "Play Again? (Y/N)" << endl;
cin >> choice;
system("cls");
}
}
}while(choice == 'Y' || choice == 'y'); //
system("pause");
return 0;
}
ДАЖЕ ЕСЛИ Я ВХОДЯ ВЫБРАТЬ КАК «N» ИЛИ «НЕТ» ОСТАНОВИТЬ ЛОП. И даже если я вхожу в «Y» или «y», он не спрашивает, сколько попыток мне нужно. Вместо этого он просто спрашивает, какое целое число я хотел бы ввести. Попробуйте скопировать и скомпилировать код, чтобы лучше понять, в чем проблема. Пожалуйста помоги.C++ Do while loop condition не работает
PS: Это гадание программа, которую я делаю, кстати ...
Вы пробовали выполнить свой код с помощью отладчика? –
Это будет довольно хороший трюк для показанного кода, чтобы сделать что-либо в ответ на «Y», «y», «N» или «n», если в показанном коде нет ничего. Ваша проблема заключается в том, что ваш компьютер выполняет только то, что вы говорите, а не то, что вы хотите. –
На самом деле это «Y» или «y» не «Y» или «y», потому что выбор объявляется как char, поэтому «Y» или «y» равно букве Y или y. – cringyfudge420