Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.04;
Скачать: 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 вся ветка

Текущий архив: 2005.12.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.056 c
2-1132162568
Vano85
2005-11-16 20:36
2005.12.04
Загрузка визуальных компонентов из DLL


2-1131568136
serko
2005-11-09 23:28
2005.12.04
Расшаривание папки!


14-1131714277
oldman
2005-11-11 16:04
2005.12.04
Запоздалое поздравление... (сидел без связи)


4-1128300987
Macho
2005-10-03 04:56
2005.12.04
Игнорировать нажатие клавиш мыши для CheckBox


14-1131997607
genek84
2005-11-14 22:46
2005.12.04
Формирование сложного отчета в Фоксе 9.0