|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.07.2008, 07:40 | #1 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Обработка исключительной ситуации
Код:
Этот коод работает хорошо, но возможны случаи, когда a1,b1,c1,d1 одновременно равны нулю, т.е. k1=0. Как мне написать применительно к этому коду прроцедуру обработки исключительной ситуации, т.е. деления на ноль? Потому что k1 может быть равным нулю. Мне надо, чтобы если k1=0, то остальные формулы в процедуре этой кнопки работали и считали, а та формула код которой приведен выше и в которой k1=0, ничего не выводила в ответ и не выводила ошибки о том, что деление на ноль. Подскажите пожалуйста, а то я сто раз пробовал написать обработку через try...except...end, но у меня не получалось((
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
Последний раз редактировалось Stilet; 28.07.2008 в 09:47. |
28.07.2008, 07:50 | #2 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,547
|
Тут не нужно использовать исключения. Пиши так:
Код:
E-Mail: arigato.freelance@gmail.com
|
28.07.2008, 07:56 | #3 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Спасибо конечно, Arigato за совет, но у меня одна кнопка должна производить расчет по четырем формулам! Причем последние три (кроме первой) имеет делитель в знаменателе, а значит он может быть равен нулю, если вводных данных нет. Как тогда быть?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
28.07.2008, 08:01 | #4 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,547
|
Проверять делить на равенство нулю.
E-Mail: arigato.freelance@gmail.com
|
28.07.2008, 08:07 | #5 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
Код:
|
28.07.2008, 08:08 | #6 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Всем спасибо!) Попробую!)
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
28.07.2008, 08:11 | #7 |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
и вот нашол не плохую статью по исключениям:
http://pblog.ru/?p=89 |
28.07.2008, 09:48 | #8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
хм. Всетки я бы заменил функу StrToFloat на TryStrToFloat или StrToFloatDef дабы предусмотреть еще и обработку случая нецифрового или неверного формата ввода в Эдиты.
I'm learning to live...
|
28.07.2008, 12:18 | #9 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
А как вообще можно отключить проверку деления на ноль? Кажется какую то директиву надо поменять. Чтобы было так: ноль в знаменателе? ну и не надо ответ ничего выводить.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
28.07.2008, 12:52 | #10 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
Ну например в обработке
Код:
Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Исключительные ситуации | FIIR | БД в Delphi | 5 | 19.06.2008 16:30 |
Исключительные ситуации | FIIR | Помощь студентам | 1 | 19.06.2008 13:50 |
Обработка исключительной ситуации (сокеты) | GHOST_Kasper | Работа с сетью в Delphi | 6 | 12.02.2008 06:57 |
обработка ситуации неверного ввода данных | Sweta | Помощь студентам | 0 | 22.11.2007 17:13 |
Исключительные ситуации | Mickle | Общие вопросы Delphi | 6 | 07.10.2007 21:03 |