Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2019, 15:19   #1
pedro228
Новичок
Джуниор
 
Регистрация: 01.06.2019
Сообщений: 2
По умолчанию почему когда я ввожу 1 или 2, то цикл do-while продолжается,а если ввожу другую любую цифру, то останавливается

#include <iostream>
#include <cstdlib>

using namespace std;



int main()
{
setlocale(LC_ALL, "Russian");

int a,b;

b = 100;

do{
cout <<"введите";
cin >> a;
}while(a==1 || a==2);

if(a == 1)
cout << a+b;

else if(a == 2)
cout<<a-b;

return 0;
}
pedro228 вне форума Ответить с цитированием
Старый 01.06.2019, 15:39   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,550
По умолчанию

Как приказано, так оно и работает. В переводе с С++нутого на рабоче-крестьянский фрагмент цикла звучит так: " Вводите 1 или 2, пока не надоест, а как надоест - нажмите любую другую цифру, и пойдем ее обрабатывать". Наверно, замысливалось что-то вроде:
Код:
do
{
    cout <<"введите";
    cin >> a;

   if(a == 1) cout <<  a+b;

   else if(a == 2) cout <<a-b;

   else break ;
} while(1);

return 0;
}

Последний раз редактировалось digitalis; 01.06.2019 в 15:44.
digitalis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C] Помогите! если ввожу первым Х, то ничего не получается. И почему я не могу ввести больше одного числа? Lucky_Vadim Помощь студентам 0 21.12.2017 18:25
[C] Подскажите, в чем ошибка: перевод дюймов в сантиметры. Но когда запускаю и ввожу число (например 2), то при выводе результата вместо 2 в формуле стоит 0.00 UserOne Помощь студентам 2 23.09.2017 21:46
Паскаль - пишет при вводе 0 - Ошибка:вещественное деление на нуль и когда ввожу цифру -0.1 MoLoDoI Паскаль, Turbo Pascal, PascalABC.NET 4 03.02.2012 14:49
найдите пожалуйста ошибку qbasic жалуется что число вне диапазона когда ввожу бедный_студент Помощь студентам 4 10.05.2009 18:25