Помимо других ваших синтаксических ошибок, другие комментаторы отметили, что ваш l oop не должен переоценивать, это правда.
Однако в этом случае нельзя иметь и Y
, и y
в одной символьной переменной, если бы параметры были инвертированы (и исправлены синтаксические ошибки), это привело бы к бесконечному l oop.
int main()
{
char ans;
do
{
cout << "Would you like to calculate again (Y/N)?" << endl;
cin >> ans;
if(ans=='y' || ans=='Y') // even if you choose not to continue again, the last statement of a do-while will execute unless you set a condition for it
cout<<"Going again \n";
} while ((ans == 'y') || (ans == 'Y')); // ans can be only 'Y' or 'y' , not both
return 0;
}
А то время-l oop будет более полезным для вашего случая (на основе опубликованного вами кода):
char ans = 'Y';
while ((ans == 'Y') || (ans == 'y')) {
cout << "Would you like to calculate again (Y/N)?" << endl;
cin >> ans;
}