Независимо от того, что я печатаю в операторе if, код не работает так, как этого хочет мой профессор.
Мой TA сказал, что это синтаксическая ошибка, но не предоставил намного больше справочной информации дляменя.
"Синтаксис, который вы использовали, неверен. Если вы, например, сравниваете инициалы с abc, вы скажете if (initials ==" abc "). Аналогичным образом сделайте то же самое для каждого условия. "
Я не совсем понимаю, что он имеет в виду.
Если я изменю свое выражение if, добавив кавычки, оно всегда запрещает доступ. Если я оставляю все как есть, это всегда дает доступ.
Вот мой код:
#include <iostream>
#include <string>
using namespace std;
int main(){
cout<<"Gain entry with your user information and password." <<endl;
cout<<"For security purposes, the information will not be echoed to the screen." <<endl;
cout<<"Please enter your initials: " <<endl;
string initials;
cin>>initials;
cout<<"Please enter your age: " <<endl;
int age;
cin>>age;
cout<<"Please enter your password: " <<endl;
string password;
if ( password == initials,age) {
cout<<"Access granted!" <<endl;
}
else {
cout<<"Access denied!" <<endl;
}
return 0;
}
Вот что он говорит:
==================== YOUR OUTPUT =====================
0001: Gain~entry~with~your~user~information~and~password.
0002: For~security~purposes,~the~information~will~not~be~echoed~to~the~screen.
0003: Please~enter~your~initials:
0004: Please~enter~your~age:
0005: Please~enter~your~password:
0006: Access~granted!
=================== MISMATCH FOUND ON LINE 0006: ===================
ACTUAL : Access~granted!
EXPECTED: Access~denied!
======================================================
Adjust your program and re-run to test.
Test 2 failed
ccc_0bc38e1b3b_10207@runweb5:~$ ^C
ccc_0bc38e1b3b_10207@runweb5:~$