|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.09.2011, 18:40 | #1 |
Пользователь
Регистрация: 18.05.2010
Сообщений: 37
|
Возникает ошибка при отрицательном числе
При вводе 0 возникает ошибка floating point division by zero.
при -0,.. тоже возникает ошибка, но уже invalid floating point operation Никак не могу допереть в чем дело. Где накасячил. Помогите. unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) edt1: TEdit; edt2: TEdit; btn1: TButton; btn2: TButton; btn3: TButton; lbl1: TLabel; lbl2: TLabel; img1: TImage; lbl3: TLabel; lbl4: TLabel; procedure btn3Click(Sender: TObject); procedure btn2Click(Sender: TObject); procedure btn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.btn3Click(Sender: TObject); begin Close; end; procedure TForm1.btn2Click(Sender: TObject); begin Edt1.text:= ''; Edt2.text:=''; end; procedure TForm1.btn1Click(Sender: TObject); begin if (StrTofloat(edt1.text) > -1) and (StrTofloat(edt1.text) <= 1) then begin edt2.Text:=FloatToStr(exp(2*ln(strt ofloat(edt1.Text)))*2-1) end else begin if (StrTofloat(edt1.text) > 1) and (StrTofloat(edt1.text) <= 2) then begin edt2.Text:=FloatToStr(exp(2*ln(strt ofloat(edt1.Text)))) end else begin if(StrTofloat(edt1.text) <= 1) then begin edt2.Text:=FloatToStr(1); end else begin if StrTofloat(edt1.text) > 2 then begin Edt2.text:= 'x>2 функция не определена' end end; end; end; end; end. |
22.09.2011, 19:21 | #2 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 22.09.2011 в 19:26. |
||
22.09.2011, 21:44 | #4 |
Пользователь
Регистрация: 18.05.2010
Сообщений: 37
|
|
23.09.2011, 10:33 | #5 |
Форумчанин
Регистрация: 13.12.2007
Сообщений: 788
|
именно, Вы в школе учились? помните допустимые значения под логарифмом? поэтому сейчас для возведения в степень проще использовать Power, чем писать несколько условий на каждый неподходящий случай (отдельно отрицательные, отдельно ноль)
благодарность - сюда (не забываем писать от кого)
Последний раз редактировалось Zer0; 23.09.2011 в 10:36. |
23.09.2011, 11:56 | #6 |
Пользователь
Регистрация: 18.05.2010
Сообщений: 37
|
ок, спасибо)))
Последний раз редактировалось robin39; 23.09.2011 в 12:16. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
При закрытии Word возникает ошибка | sewer777 | Microsoft Office Word | 3 | 20.10.2011 13:19 |
При установке MySQL возникает ошибка | Gen_r_questions | PHP | 0 | 28.05.2011 10:41 |
Ошибка 104, возникает при определенном шаге. | TomOoma | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 08.05.2011 13:48 |
При измимении Button возникает ошибка с CheckBox | Саня_ | Общие вопросы Delphi | 4 | 07.03.2011 21:05 |
При открытии двойным щелчком раздела возникает ошибка( | DEMONENOC | Операционные системы общие вопросы | 3 | 30.06.2009 05:02 |