Форум программистов, компьютерный форум CyberForum.ru

Бесконечный цикл при исключениях - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Правильно ли написана программа? http://www.cyberforum.ru/cpp-beginners/thread1105536.html
Задача такова. Перед авиаперелётом на известное расстояние закупается топливо для самолёта. Топливо продаётся в ёмкостях заданного объёма, указана цена одной ёмкости. Также известен расход топлива самолёта. Требуется определить, хватит ли имеющейся суммы денег на закупку необходимого количества топлива. Топливо также может быть закуплено у иностранного поставщика, поэтому требуется узнать...
C++ Вводятся 2 строки. Перевернуть обе строки, склеить и вывести Помогиет с заданием! Вводятся 2 строки. Перевернуть обе строки, склеить и вывести. 1)тип string Код: #include<iostream> using namespace std; #include <string> http://www.cyberforum.ru/cpp-beginners/thread1105520.html
C++ Нахождение наиболее подходящей последовательности
Здравствуйте! Неоднократно сталкивался с разными задачами, которые, как мне кажется, сводятся к одной и той же. Хотел бы, чтобы кто-нибудь объяснил, как решаются задачи такого типа. Мне не нужен код, главное - принцип. Вот задача (вкратце): "В аэропорту имеется только одна взлётная полоса. Одновременно на ней НЕ могут находится несколко самолётов. Про все ждущие разрешения на вылет самолёты...
C++/CLI WinForms Ошибка с графикой в приложении Windows form (ошибка не в коде!)
Всем доброго времени суток! Написал программу в windows form. Несколько раз скомпилировал и все хорошо. Сейчас попробовал снова запустить приложение,компиляция проходит успешно,но самой графики нет. Вместо этого вот такая форма (в приложении прикреплена). На других ноутбуках все работает. Студию переустановил-не помогло.
C++ Вывести минимальное количество http://www.cyberforum.ru/cpp-beginners/thread1105489.html
Даны монеты номиналом 1, 2, 5, 10, 25, 50. Нужно написать программу, в которую вводится любое значение(сумма монет, т.е может быть: 60, 68, 75 и т.д) Программа должна вывести минимальное количество монет, которым можно достигнуть этой суммы. Т.е: 60=50+10; 68=50+10+5+2+1; 75=50+25. Пожалуйста помогите с написанием программы. Буду очень благодарен, за любую оказанную помощь. :)
C++ Начальное формирование картотеки, вывод всей картотеки, ввод номера телефона и время разговора, вывод извещения на оплату телефонного разговора На международной телефонной станции картотека абонентов, содержащая сведения о телефонах и их владельцах, организована как линейный список. Составить программу, которая: • обеспечивает начальное формирование картотеки в виде линейного списка; • производит вывод всей картотеки; • вводит номер телефона и время разговора; • выводит извещение на оплату телефонного разговора. Программа должна... подробнее

Показать сообщение отдельно
DU
1480 / 1056 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
25.02.2014, 23:11     Бесконечный цикл при исключениях
после выбрасывания исключения стрим std::cin переходит в плохое состояние и может хранить введенные
ранее символы. поэтому его нужно перевести в хорошее состояние и удалить старрый ввод
http://www.cplusplus.com/reference/ios/ios/clear/
http://www.cplusplus.com/reference/i...stream/ignore/
как-то так:
C++
1
2
3
4
5
6
    catch(int )
    {
        cout<<"Вы ввели не циферку"<<endl;
        cin.clear();
        cin.ignore(); // указать сколько чего зачистить, иначе будет срабатывать несколько раз если ввести "dsffsdf"
    }
 
Текущее время: 09:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru