#c #c #cppcheck
Вопрос:
Я пытаюсь сделать эту игру kina guess на C , я новичок и все еще учусь. То, чего я пытаюсь достичь, — это игра в угадайку с двумя постоянными именами, очень простая без ошибок, но она не работает после того, как я что-то ввожу. он должен отчитываться, пока я не найду правильное имя. Пожалуйста, также я не хочу изменять структуру кода, просто найдите, почему это не работает.
#include <iostream>
#include <string>
using namespace std;
struct Vlerat {
string guess01 = "Resul";
string guess02 = "Rejan";
int numruesi = 0;
};
int main() {
Vlerat funksioni;
string nameGuess;
int nameOkay = 0;
cout << "Gjej njerin prej dy emrava te fshehura." << endl;
cout << "Ndihm: Fillojn me Shkronjen 'R', dhe pas asaj vjen edhe nje shkronj 'e'" << endl;
do {
cout << "Shkruaj Emrin > "; cin >> nameGuess;
if (nameGuess == funksioni.guess01){
cout << "Ju e keni gjetur emrin e njerit nga personat duke provuar gjithesej:";
cout << funksioni.numruesi << " here." << endl;
nameOkay ;
}
if (nameGuess == funksioni.guess02) {
cout << "Ju e keni gjetur emrin e njerit nga personat duke provuar gjithesej:";
cout << funksioni.numruesi << " here." << endl;
nameOkay ;
}
funksioni.numruesi ;
} while(nameOkay = 0);
}
Комментарии:
1.
nameOkay = 0
должно бытьnameOkay == 0
2.
nameOkay = 0
это задание.nameOkay == 0
было бы сравнение
Ответ №1:
Тебе следует переодеться while(nameOkay = 0);
в while(nameOkay == 0);
. Потому =
что является назначением, но ==
является оператором сравнения (равенства)