Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Вниз

Oшибка   Найти похожие ветки 

 
SUCUBE   (2006-06-07 21:09) [0]

Вылазиет такое:
Debugger Exception Notification

Project.exe raised exception class EInvalidOp with message "Invalid floating point operation"/
Process stopped.Use step or run to continue.
 public
   { Public declarations }
 end;

var
 Form6: TForm6;

implementation

uses Unit3;

{$R *.dfm}
function fak (n :integer) :integer;
var i :integer;
begin
 result := 1;
 for i := 2 to n do
   result := result * i;
end;

function pow (a :double; s :double) :double;
begin
 result := exp(s*ln(a));
end;

function P (m :integer) : double;
var Sum :double; n :integer;
begin
 Sum := 0;
 for n := 0 to m do begin
   Sum := Sum + ((fak(m)/fak(m-n))*pow(((700/24)/(60/10)), n));
 end;
 result := 1/Sum;
end;
procedure TForm6.Button3Click(Sender: TObject);
begin
close;
end;

procedure TForm6.Button2Click(Sender: TObject);
begin
form3.show();
form6.hide();
end;

procedure TForm6.Button1Click(Sender: TObject);
var
L,mu,ps,NSYST,NOCH,Pn,Pf:double;
m,n :integer;

begin
 L:=700/24;
 mu:=60/10;
 ps:=L/mu;
 //Pn:= P(m)*(fak(m)/fak(m-n))*pow(ps, n);
 //Pf:=(1-P(m))*mu;
 //NSYST:=m-(1-P(m))/ps;
 //NOCH:=NSYST-(1-P(m));
 edit1.Text:=FloatToStr(L);
 edit2.Text:=FloatToStr(mu);
 edit3.Text:=FloatToStr(ps);
 edit4.Text:=FloatToStr(Pn);
 edit5.Text:=FloatToStr(Pf);
 edit6.Text:=FloatToStr(NSYST);
 edit7.Text:=FloatToStr(NOCH);

 sg.Cells[0, 0] := "m=";
 sg.Cells[1, 0] := "P0(m)=";

 for m := 2 to 12 do begin
   sg.Cells[0, m-1] := inttostr(m);
   sg.Cells[1, m-1] := floattostr(P(m));

end;


Что делать то? как исправить


 
SUCUBE   (2006-06-07 21:13) [1]

млин забыла вот эти убрать //..без них не работает....что делать...
вот тут
//Pn:= P(m)*(fak(m)/fak(m-n))*pow(ps, n);
//Pf:=(1-P(m))*mu;
//NSYST:=m-(1-P(m))/ps;
//NOCH:=NSYST-(1-P(m));
а когда без // вылазиет ошибка


 
Desdechado ©   (2006-06-07 21:14) [2]

хоть бы строчку указал, на какой ругает
и дебаггер тебе в помощь


 
SUCUBE   (2006-06-07 21:17) [3]

//Pn:= P(m)*(fak(m)/fak(m-n))*pow(ps, n);
//Pf:=(1-P(m))*mu;
//NSYST:=m-(1-P(m))/ps;
//NOCH:=NSYST-(1-P(m));
на них и ругает


 
Desdechado ©   (2006-06-07 21:18) [4]

ps не ноль случайно?


 
SUCUBE   (2006-06-07 21:20) [5]

не...там кажется с Р(m) что то не то


 
Desdechado ©   (2006-06-07 21:25) [6]

не боишься, что факториал в интегер не влезет?
а вместо Double лучше extended в таких случаях


 
SUCUBE   (2006-06-07 21:30) [7]

да я и карренси делала..без толку... а интегер на что изменить?


 
Desdechado ©   (2006-06-07 21:58) [8]

прежде чем использовать M и N в  TForm6.Button1Click
их неплохо бы инициализировать
локальные переменные имеют свойство содержать в себе мусор

кстати, ошибка звучит как Floating point overflow, что значит переполнение
а интегер можно заменить на Int64


 
Desdechado ©   (2006-06-07 21:59) [9]

и еще раз - отладчик длятого и придумали, чтоб нетолько строчки с ошибками находить, но и причины ошибок


 
SUCUBE   (2006-06-07 22:04) [10]

а как инициализировать


 
Desdechado ©   (2006-06-07 22:06) [11]

зависит от задачи
нулем, например



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.011 c
2-1149773568
XTD
2006-06-08 17:32
2006.06.25
Как программно свернуть окно ?


2-1149274678
deplhi
2006-06-02 22:57
2006.06.25
EOleSysError: Class not registered(и снова про СОМ)


3-1144615745
Brak
2006-04-10 00:49
2006.06.25
Простенькая БД


15-1149110794
Kolan
2006-06-01 01:26
2006.06.25
Среда виснет при отладки в потоках.


8-1137721293
STK
2006-01-20 04:41
2006.06.25
Как использовать компоненты для файлов tiff





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский