Вниз
Скачать: CL | DM;

Расчёт числа Эйлера   Найти похожие ветки 

← →
Alois   (2005-11-18 22:55) [0]

Уважамые мастера, поогите плиз. Как рассчитать число Эйлера рекурсивно? Формула расчёта: sum = 1/0! + 1/1! + 1/2! + ... + 1/n!


← →
Virgo_Style ©   (2005-11-18 23:05) [1]

function Eiler(N:Integer):Double;//наверняка пишется не так, надеюсь, он не обидится -)
begin
 if N=0 then
   Result:=1/Fact(0)
 else  
   Result:=1/Fact(N)+1/Eiler(N-1);
end;


Надеюсь, ничего не напутал. Если встроенной функции факториала нет - напиши сам, можно тоже с рекурсией.


← →
Alois   (2005-11-18 23:13) [2]

Большое спасибо!


← →
kami ©   (2005-11-18 23:29) [3]

Virgo_Style ©   (18.11.05 23:05) [1]

Result:=1/Fact(N)+1/Eiler(N-1);

Вроде, должно быть
Result:=1/Fact(N)+Eiler(N-1);

Надеюсь, тоже ничего не напутал. :)


← →
Alois   (2005-11-19 01:11) [4]

Спасибо, но что-то тоже не работает.


← →
Virgo_Style ©   (2005-11-19 09:01) [5]

kami ©   (18.11.05 23:29) [3]

Точно, спасибо :-)

Alois   (19.11.05 1:11) [4]

Как именно не работает?


← →
MBo ©   (2005-11-19 11:00) [6]

Cчет в прямом порядке:


function E(N: Integer): Double;

 function Recurse(M: Integer; InvFac: Double): Double;
 begin
   if M = N then
     Result := InvFac / M
   else begin
     InvFac := InvFac / M;
     Result := InvFac + Recurse(M + 1, InvFac);
   end;
 end;

begin
 Result := 1 + Recurse(1, 1);
end;



← →
Alois   (2005-11-19 20:42) [7]

Спасибо всем, кто откликнулся!
Надо было так:

function eulerRekursiv(n: integer): double;
begin
 if n = 0 then result:= 1
       else
 result := 1.0/fact(n) + eulerRekursiv(n - 1);
end;


← →
Separator ©   (2005-11-19 21:12) [8]

О блин, классно
Но учти, так дольше



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
3-1129619631
MakNik
2005-10-18 11:13
2005.12.04
Номер по порядку...


14-1131998554
vrem
2005-11-14 23:02
2005.12.04
Нежелание видеть грустное - это болезнь?


2-1131997633
Дева
2005-11-14 22:47
2005.12.04
обработчик исключительной ситуации


6-1124781103
tomkat
2005-08-23 11:11
2005.12.04
Как в INDY SMTP вложить атач ?


1-1131520491
Piero
2005-11-09 10:14
2005.12.04
Handle формы приложения, после запуска его WinExec




   Наверх