Я довольно новичок в программировании на С ++, так что это, вероятно, ошибка новобранец. НО. (почему я не могу скрыть остальную часть своего кода ... Я хочу показать ВСЕ, что я делаю ..)Программа распознает первый текстовый вывод, но не второй текстовый вывод
Итак, сначала мой код выглядит следующим образом (заголовки и т. Д. плюс первые несколько строк кода)
#include <iostream>
#include <string>
using namespace std;
string command;
string playername;
char response;
string object;
int main()
{
do
{
cout << "What is your name? ";
cout << endl;
cin >> playername;
cout << endl;
cout << "Your name is " << playername << "? (Y/N)" << endl;
cout << endl;
cin >> response;
cout << endl;
cout << endl;
} while ((response != 'y')&&(response != 'Y'));
}
а потом вот немного проблема:
do
{
cout << endl;
cout << "What will you do?";
cout << endl;
cin >> command >> object;
if ((command == "look")&&(object == "door"))
cout << "You look at the door. It appears to be but a simple wooden door
with a brass handle for opening and shutting. ";
else if ((command == "Open")&&(object == "door"))
cout << "You open the door and proceed to the next room";
} while ((command == "look")&&(command == "Look"));
}
Моя программа будет распознавать, когда я ставлю в «смотреть» и «дверь» (как команды и объекта) и отвечает соответствующей строкой «Это дверь». НО, когда я помещаю «открытую» и «дверь», он просто принимает это и заканчивает программу, не отображая текст.
Если есть ЛЮБОЙ способ, я могу исправить это, я был бы очень благодарен.
Спасибо!
EDIT: для удобства чтения EDIT2: Изменено последнюю строку
}while ((command == "look")||(command == "Look"));
и я получаю: the bulwarky that is this code
Хотя компилятор не заботятся о таких вещах, как форматирование и отступы, мы, люди. Попробуйте отформатировать код с помощью отступа, чтобы его было легче читать. –
Aaah sorry: S Я очень не привык к этому и просто пытаюсь собрать все вместе. – KitKatarine