profile
Опубликовано 5 лет назад по предмету Информатика от veronikatyan54p9t0vc

Если я ввожу "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;
}

  1. Ответ
    Ответ дан vaash
    здесь ошибка в том, что логические операции || и && разделяют логические выражения. во всех условиях справа от || стоит просто строка (непустая строка в с++ считается за истину, поэтому все три условия выполняются), а нужно везде дописать mood == . то есть одно условие выглядит так: if (mood == "Good" || mood == "good"). также это не ошибка, но создавать переменные Good, Fine и Bad в этой программе не нужно, так как ты их не используешь. и ошибка в английском) в первом условии должно быть mind playing, а не mind to play. 
    1. Ответ
      Ответ дан veronikatyan54p9t0vc
      Всё, поняла, благодарю.
    2. Ответ
      Ответ дан vaash
      не за что! рад был помочь)
    3. Ответ
      Ответ дан veronikatyan54p9t0vc
      Как мне добавить исключения?
    4. Ответ
      Ответ дан veronikatyan54p9t0vc
      Можно написать, что mood не равен good||fine||bad?
    5. Ответ
      Ответ дан veronikatyan54p9t0vc
      Что не так? try {
      string mood;
      if (mood == "Good"| mood == "good"| mood == "Fine"| mood == "fine"| mood == "Bad"| mood == "bad") {
      throw "O-ops";
      }
      }
      catch (string mood) {
      cout < }
Самые новые вопросы