Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
1

Как правильно зациклить программу для фильтрации ввода?

13.12.2015, 19:39. Показов 2004. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток! Хотелось бы узнать как вернее всего зациклить программу, если условие выполняться?
C++
1
2
3
4
5
void func(int value)
{
    cout << "Введите число от 0 до 99" << endl;
    if (value < 0 || value > 99)
}
Заранее спасибо
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.12.2015, 19:39
Ответы с готовыми решениями:

Как фильтровать форму сразу после ввода значения для фильтрации?
Логика: _. Поле для фильтрации Me!ИДСтудентаФлтр = &quot;&quot;; _. Пользователь. Вводит &quot;1&quot;. Поле...

Как правильно организовать конвейер linq2sql для фильтрации
Я , уверен,изобретаю велосипед, но пока на просторах Гугла не встретил ничего путного. Задача...

Как правильно зациклить программу чтобы выходить из неё можно было при вводе "exit"
Здравствуйте, как правильно зациклить программу чтобы выходить из неё можно было при вводе &quot;exit&quot;...

Выражение для фильтрации ввода 359 градусов
Прошу помощи. Мне необходимо выражение для фильтрации ввода цифр. 360 Как ввести зависимость...

7
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
13.12.2015, 19:46 2
Лучший ответ Сообщение было отмечено Kenny_Dalglish как решение

Решение

Полагаю, как-то так:
C++
1
2
3
4
5
while(!(cin>>value) || value < 0 || value > 99)
{
    cin.clear();
    cin.ignore(numeric_limits<streamsize>::max(),'\n');
}
1
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
13.12.2015, 19:57  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
void doubleFigures(int value)
{
    cout << "Введите число от 0 до 99" << endl;
    cin >> value;
    while (!(cin >> value) || value < 0 || value > 99)
    {
        cout << "Введите число от 0 до 99" << endl;
 
        cin.clear();
        cin.ignore(numeric_limits<streamsize>::max(), '\n');
    }
}
Окончание работы функции срабатывает только с второго раза -
Миниатюры
Как правильно зациклить программу для фильтрации ввода?  
0
0 / 0 / 0
Регистрация: 13.12.2015
Сообщений: 22
13.12.2015, 20:02 4
C++ (Qt)
1
2
3
4
do{
  cout<<"Введите число от 0 до 99" <<endl;
cin>>value;
}while(value<0||value>99);
будет выполнятся пока value не будет равным числу который находится между 0 и 99
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
13.12.2015, 20:07 5
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
Окончание работы функции срабатывает только с второго раза -
Четвертую строчку уберите, у меня ввод прямо в условии цикла происходит.

Добавлено через 1 минуту
Цитата Сообщение от MrZed6078 Посмотреть сообщение
будет выполнятся пока value не будет равным числу который находится между 0 и 99
И упадет если вместо числа ввести "трах-тибидох". От чего мой вариант и страхует.
1
0 / 0 / 0
Регистрация: 13.12.2015
Сообщений: 22
13.12.2015, 20:12 6
Цитата Сообщение от Renji Посмотреть сообщение
Четвертую строчку уберите, у меня ввод прямо в условии цикла происходит.

Добавлено через 1 минуту

И упадет если вместо числа ввести "трах-тибидох". От чего мой вариант и страхует.
Но это же int значение, мой цикл проверяет входит число или нет в диапозон и если ввести "трах тебедо' он поймет что это не число и попросит ввести значение заново
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
13.12.2015, 20:21 7
Цитата Сообщение от MrZed6078 Посмотреть сообщение
Но это же int значение, мой цикл проверяет входит число или нет в диапозон и если ввести "трах тебедо' он поймет что это не число и попросит ввести значение заново
Если ввести "трах тибидох" cin подымет флаг "что за фигня, где число?" (fail/bad) и работать откажется наотрез. Поэтому, флаг надо опустить (cin.clear()), а фигню из буфера вычистить (cin.ignore).
0
0 / 0 / 0
Регистрация: 13.12.2015
Сообщений: 22
13.12.2015, 20:26 8
только что скомпилировал вы были правы приношу извинения
но при решении олимпиадных задач там такого не должно быть, там всегда только цифры дают
0
13.12.2015, 20:26
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.12.2015, 20:26
Помогаю со студенческими работами здесь

Как зациклить? после ввода дважды не правильного числа вылетает
#include &lt;iostream&gt; #include&lt;limits&gt; using namespace std; int check(int Test) { ...

Как правильно обрабатывать исключения неверного ввода в TextBox для расчетов
Есть ТекстБокс в винформс, которое должно принимать значения типа Double. делаю так: double...

Как зациклить программу?
Написал пример в C++ но не понимаю как сделать цикличность чтобы решало несколько действий помогите...

Как зациклить программу?
int x=1.; while (x=1.) { char line; FILE *stream; stream = fopen(&quot;tehvoda.txt&quot;, &quot;r&quot;); ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO / / https:/ / leetcode. com/ studyplan/ top-interview-150/ package topInterview . . .
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
КуМир: решение геометрических задач
bytestream 28.01.2025
Программирование геометрических задач в среде КуМир становится всё более актуальным в обучении школьников и студентов. КуМир — это разработанная в России обучающая программная среда, предназначенная. . .
КуМир, исполнитель Водолей: Задачи и решения
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения основам программирования и алгоритмизации. Исполнитель Чертежник работает на координатной плоскости, где может. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru