Показать сообщение отдельно

  #10  
Старый 28.04.2009, 13:31
Flame of Soul
Участник форума
Регистрация: 25.05.2007
Сообщений: 290
С нами: 9980798

Репутация: 435
Отправить сообщение для Flame of Soul с помощью MSN
По умолчанию

Взятие интеграла методом Симпсона

A, B - интервал интегрирования
N - число точек на интервале
Func - функция, от которой берется интеграл.
Возвращаемое значение - значение интеграла


PS: сделано на Delphi (указывайте среду программирования)

PHP код:
type
  TFunction 
= function(XExtendedArgPointer): Extended;

function 
Simpson(ABExtendedNCardinalFuncTFunctionArgPointer):
  
Extended;
var
  
hExtended;
  
XExtended;
  
KExtended;
  
IInteger;
begin
  Assert
(0);
  
:= 0.5 * (A) / N;
  
Result := Func(AArg);
  
:= h;
  for 
:= 1 to 2 do
  
begin
    
if I mod 2 0 then
      K 
:= 2
    
else
      
:= 4;
    
Result := Result Func(XArg);
    
:= h;
  
end;
  
Result := Result Func(BArg);
  
Result := Result 3;
end
 
Ответить с цитированием