|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.06.2012, 16:56 | #1 |
Пользователь
Регистрация: 13.02.2012
Сообщений: 37
|
Где ошибка? Delphi. Вычисление значения по формуле в трёх условиях
Проблема в том, что программа постоянно выполняет условие №3: "в остальных случаях V:=(|a|+|b|)/2". Где ошибка?
Заранее благодарен |
06.06.2012, 17:21 | #2 |
Форумчанин
Регистрация: 07.11.2011
Сообщений: 100
|
по моему так надо
Код:
|
06.06.2012, 17:34 | #3 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,289
|
Во-первых, как указал vova_, нужно связать элсами.
Во-вторых, правильно задать условия. Условие (b<c)and(b>d) не означает, что b лежит вне отрезка [c,d]. Приведите само условие задачи.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
06.06.2012, 17:35 | #4 |
Помог? Дави весы!
Пользователь
Регистрация: 15.05.2012
Сообщений: 25
|
Я попробовал поставить после else showmessageи сообщение не появилось. Значит Программа не всегда туда заходит.
Код:
|
06.06.2012, 18:06 | #5 |
Пользователь
Регистрация: 13.02.2012
Сообщений: 37
|
Спасибо vova_. Помогло! Но я не понимаю, почему Вроде такая мелочь, я просто не понимаю необходимости else end, что "программно" исправилось?
Я уже исправил: if (a<c) or (a>d) and (b<c) or (b>d) then. Думаю вы это имели ввиду. Спасибо! |
06.06.2012, 18:45 | #6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,289
|
Во-первых, if ((a<c) or (a>d)) and ((b<c) or (b>d)) then, так как and старше or.
Во-вторых, насчет else: У вас было "если есть молоко, купить хлеб" "если есть кефир, купить сахар, иначе купить соль" Добавим else: "если есть молоко, купить хлеб, иначе если есть кефир, купить сахар, иначе купить соль" Т.е. в вашем случае могло получиться, что купим и хлеб, и сахар (или соль), а нужно купить что-то одно.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 06.06.2012 в 18:48. |
06.06.2012, 20:34 | #7 | |
Форумчанин
Регистрация: 07.11.2011
Сообщений: 100
|
Цитата:
if (a=true) then V=1; //даже если V стало равно 1 if (b=true) then //прога проверит b=true? и если нет испол- V=2; //-нит то что после else else V=3; а в варианте который я предложыл ваша прога не выполнит проверку b=true? при a=true |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Приближённое вычисление определенного интеграла по «формуле прямоугольников» и по «формуле трапеций» | Юличк@ | Помощь студентам | 1 | 25.04.2012 17:41 |
Вычислить значение функции Z по формуле и зависящей от содержимого трёх массивов А, F и С [ C++ ] | Pycbka | Помощь студентам | 1 | 25.04.2012 00:57 |
Где ошибка в формуле? | Kartinochka | Microsoft Office Excel | 6 | 11.06.2010 13:59 |
Вычисление суммы при каких либо условиях. | ЮклЯ | Microsoft Office Excel | 5 | 15.09.2009 10:16 |
Си++ Составить программу на вычисление значения по формуле | verpl | Помощь студентам | 3 | 28.05.2009 11:16 |