daniilkeidi
16.11.2021 08:49

Если я ввожу "fine" или "bad" он пишет оба условия (и fine, и bad). с остальным вроде разобралась. #include ; using namespace std; int main() { string name; cout < < "what is your name? "; cin > > name; cout < < "hello, " < < name < < endl; cout < < "how are you? "; string good; string fine; string bad; string mood; cin > > mood; if (mood == "good"||"good") { cout < < "okay, so do you mind to play with me? "; } if (mood == "fine"||"fine") { cout < < "i don't wanna annoy you but do you mind playing with me? "; } if (mood == "bad"||"bad") { cout < < "oh, what happened? can i help you? do you mind playing with me? it's really fun. you'll like it"; } return 0; }

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Сапсан936
08.10.2020 20:35
Здесь ошибка в том, что логические операции || и && разделяют логические выражения. во всех условиях справа от || стоит просто строка (непустая строка в с++ считается за истину, поэтому все три условия выполняются), а нужно везде дописать mood == . то есть одно условие выглядит так: if (mood == "Good" || mood == "good"). также это не ошибка, но создавать переменные Good, Fine и Bad в этой программе не нужно, так как ты их не используешь. и ошибка в английском) в первом условии должно быть mind playing, а не mind to play. 
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота