Форум программистов, компьютерный форум, киберфорум
C++/CLI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 04.02.2012
Сообщений: 22

Исключения

06.02.2012, 17:28. Показов 1249. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть программа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int a,b,c,d,f,f1,f2,f3,f4;
a=System::Convert::ToInt32(textBox1->Text);
b=System::Convert::ToInt32(textBox2->Text);
c=System::Convert::ToInt32(textBox3->Text);
d=System::Convert::ToInt32(textBox4->Text);
f=System::Convert::ToInt32(textBox5->Text);
if (c==0)
{MessageBox::Show(" Не правильный ввод, читайте справку ","",MessageBoxButtons::YesNo, MessageBoxIcon::Error  );}
f1=a+b;
f2=f1/c;
f3=f2-d;
f4=f3*f;
this->richTextBox1->AppendText(""+f4.ToString("0.000"));

Программа работает, если ты вводишь в textBox3 любое число! Когда вводишь 0 программа выбивает ошибку и возвращается в код программы! Как правильно сделать, чтобы пользователь не мог ввести 0 в textBox3, или после выбивания ошибки ему предоставлялась возможность ввести значение заново?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.02.2012, 17:28
Ответы с готовыми решениями:

Обработка исключения FormatException для textbox
Доброго всем дня. Вопрос заключается в следующем: как правильно обработать исключение FormatException для textbox? Допустим у меня есть...

Исключения которые можно обработать - кто они и где?
в эфире интернетов витает правило хорошего тона вопрос - какие такие исключения которые можно обработать? кроме банальщины вроде...

Try - catch. Повторная обработка исключения?
Помогите разобраться, пожалуйста. Есть datagridview, в котором проверяется, введено ли действительное число. если нет - появляется...

2
20 / 20 / 4
Регистрация: 23.10.2009
Сообщений: 139
06.02.2012, 22:56
Это код чего? Вероятно, обработчика кнопки? Если да, то тогда в теле условия if (c==0) допиши в конец return <что он там возвращает>; и тогда Юзер сможет ввести все значения заново
1
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
07.02.2012, 05:31
Сегодня поздновато до сети добрался
Цитата Сообщение от Stacey2107 Посмотреть сообщение
if (c==0) {MessageBox::Show(" Не правильный ввод, читайте справку ","",MessageBoxButtons::YesNo, MessageBoxIcon::Error );}
Здесь, ты проконтролировала с==0, - умница! Иди по этому же пути, только вот как:
C++
1
2
3
4
5
6
7
8
9
10
11
if(c!=0){
f2=f1/c;
//**************
//здесь можно разместить остальные вычисления, тогда ничего не будет вычисляться если c=0
//**************
 
}
else{
MessageBox::Show(" Не правильный ввод, читайте справку ","",MessageBoxButtons::YesNo, MessageBoxIcon::Error  );
this->textВox3->Focused();
}
Если, Вы проходили блоки try{} и catch(){} можно сделать красивее. Тут можно предусмотреть, и отловить такую ошибку как нечисловой символ, точку вместо запятой, или аж две и более запятых.
Все эти ошибки приведут к аварийной остановке программы.
Вот так парами, можно проверить каждое число, выдать на него сообщение и... предотвратить БУМ!
C++
1
2
3
4
5
6
7
8
9
10
11
try{
a=System::Convert::ToInt32(textBox1->Text);
}
 
catch(...){
MessageBox::Show(" Не правильный ввод, в текстбокс - 1 \r"+
"Повторите ввод, пожалуйста");
this->textBox1->Text="";
this->textBox1->Focused();
);
}
Вычисления можно разнести по разным кнопочкам, - кнопка "+", кнопка "-" и т.д.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.02.2012, 05:31
Помогаю со студенческими работами здесь

Организация собственного исключения и передача в него исходного исключения
Для обработки исключений при работе с БД я создал собственное исключение: public class SQLEntityException : ApplicationException ...

Исключения
По идее, функция catch должна быть в предлюдии. Но интерпретатор почему-то её не видел. А на попытку импортировать явно выдал следующее. ...

Исключения
В общем, в программе нужно обработать исключения. Вот я написал: try except on E: Exception do showmessage(); exit; end; ...

исключения
скажите пожалуйстокак написать через исключение if(n&lt;=0 || n&gt;=100000000) { fclose(f); f=fopen(&quot;output.txt&quot;,...

Исключения
Привет всем. Помогите плиз с задачкой, никак не могу решить, нужно из кода ниже сделать классы производными от logic_error, определенного в...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru