Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 11
1

Зацикливается при неверном вводе

18.03.2011, 19:09. Показов 1460. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
есть такой кусочек

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    while(true)
    {
        scanf("%d%c%d", &x, &zn, &y);
        switch (zn)
        {
        case '+':
            rez=x+y;
            break;
        case '-':
            rez=x-y;
            break;
        }
        printf("%d%c%d=%d\n", x, zn, y, rez);
    }
Если ввожу всё как положено - работает. Если ввожу какие-то другие данные(Может слово какое напишу, или в разном порядке), зацикливается в бесконечность.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2011, 19:09
Ответы с готовыми решениями:

Ошибка при вводе данных
Вот прогамма. Она просит ввести Ваше име, возраст и пол. Первые два считывает, а с последним...

Почему при вводе русского текста после cout<< при запуске программы выписывает какие то каракули
Почему при вводе русского текста после cout&lt;&lt; при запуске программы выписывает какие то каракули????

Автозаполнение при вводе кода
Доброго времени суток. Подскажите, как включить функцию автозаполнения при вводе кода, как это...

При вводе текста в окне: перевод строки при нажатии "Enter"
Значит, есть программа, работающая на строке TCHAR и &quot;vector &lt;TCHAR*&gt; vtr&quot;; Проблема в том, что...

2
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
19.03.2011, 11:13 2
C++
1
2
    if (scanf("%d%c%d", &x, &zn, &y) != 3)
        printf("error\n");
C
1
2
3
4
5
6
7
8
9
10
#include <assert.h>
 
...
 
    int retval;
 
...
 
        retval = scanf("%d%c%d", &x, &zn, &y);
        assert(retval == 3 && "incorrect input");
Добавлено через 5 минут
Цитата Сообщение от MrSoccer
зацикливается в бесконечность.
не делай циклов while(true), всегда вставляй условие, которое завершит цикл
1
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 11
19.03.2011, 15:56  [ТС] 3
Ок. Запомню. Спасибо
0
19.03.2011, 15:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.03.2011, 15:56
Помогаю со студенческими работами здесь

Зацикливается при вводе
Admin.h: #include&lt;string&gt; using namespace std; class Admin { string Login;//Логин...

При вводе символа программа зацикливается
Я пытался создать программу, которая при вводе отрицательного или типа не int выводит ошибку и...

Программа зацикливается при вводе некорректных данных
Доброго дня. Уже искал по форуму, нашел много похожих тем, но предложенные там решения, в...

При вводе слишком большого числа программа зацикливается
При вводе слишком большого числа идет зацикливание(вроде так)помогите исправить #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru