Я благодарю вас за то, что вы нашли время, чтобы прочитать мою проблему. Извините, я просто начинающий программировать. По-видимому, я не так хорош в циклах, а если и в другом, и я не знаю, что не так в моем коде. когда я запускаю его и вводю «вверх», просто перейдите к (8,10). он должен был быть (0,1), тогда консоль спросит, в каком направлении они хотят идти снова. Заранее спасибо!!! : DC++ Моя программа находится в бесконечном цикле
#include<iostream>;
#include<string>;
using namespace std;
int main()
{
int x = 0;
int y = 0;
string input;
cout << "objective: go to (8,9)" << endl;
cout << "current location (" << x << "," << y << ")" << endl;
while ((x = 8) && (y = 9))
{
cout << "which way do you want to go?: ";
cin >> input;
if (input == "up")
{
++y;
cout << "current location (" << x << "," << y << ")" << endl;
break;
}
else if (input == "down")
{
--y;
cout << "current location (" << x << "," << y << ")" << endl;
break;
}
else if (input == "right")
{
++x;
cout << "current location (" << x << "," << y << ")" << endl;
break;
}
else if (input == "left")
{
--x;
cout << "current location (" << x << "," << y << ")" << endl;
break;
}
}
cout << "current location (" << x << "," << y << ")" << endl;
cout << "Congratulations! You have reach your destination! :D" << endl;
system("pause");
return(0);
}
Вы не должны использовать инструкции break, если вы не хотите выйти из окружающего цикла. – synchronizer
спасибо, что я попытался удалить все перерывы, но он пошел прямо к «поздравлениям, вы добрались до места назначения», когда я попытался запустить его, и я меняю условие на (x == 8) && (y == 9) до сих пор нет улучшение. – user7524392
Предлагаю добавить обновленный код. – synchronizer