ИДЕЯ (C ++):
Идея проста: если вам меньше 21 года и вы учитесь на дневном отделении, вы имеете право (понятия не имею, просто домашнее задание). Если вы не имеете права, вы должны сообщить пользователю, почему.
int main()
{
string education;
int age;
cout << "Are you in full time education? (y/n): ";
cin >> education;
cout << "\nEnter your age: ";
cin >> age;
system("cls");
if (((education == "yes" || education == "y")) && (age <= 21))
{
cout << "You are eligible.";
}
else if (((education == "yes" || "y")) && (age > 21))
{
cout << "You are not eligible because you are over 21.";
}
else if (((education == "no" || "n")) && (age <= 21))
{
cout << "You are not eligible because you are not in full time education.";
}
else if (((education == "no" || "n")) && (age > 21))
{
cout << "You are not eligible because you are not in full time education and you are over 21.";
}
else
{
cout << "There is a problem with your input.";
}
}
ПРОБЛЕМА:
Теперь, если я укажу, что я НЕ в очной форме обучения и старше 21 года, вывод будет «Вы не имеете права, потому что вам больше 21 года », что технически верно, но это должно звучать так:« Вы не имеете права, потому что у вас неполное образование, и вам больше 21 года ». вместо этого!
На заметку:
- Мои утверждения #include вырезаны из скриншота, но не беспокойтесь о них, я знаю, что они ' все в порядке.
- Все операторы "else if" изначально были просто "if", но я сделал их таким образом, чтобы попытаться исправить проблему ... безрезультатно.