Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.27;
Скачать: CL | DM;

Вниз

Как найти производную от функции   Найти похожие ветки 

 
Filmax ©   (2003-03-17 06:16) [0]

Ув. мастера, как найти производную от функции, или просто помогите перевести исходник с С на Delphi:

double proiz(double x, double dx, double (*f)(double x) );
double fun(double z);
int main()
{
double x; /* точка вычисления производной */
double dx; /* приращение */
double z; /* значение производной */
scanf("%f,%f",&x,&dx); /* ввод значений x и dx */
z=proiz(x,dx,fun); /* вызов функции */
printf("%f",z); /* печать значения производной */
return 0;
}
double proiz(double x,double dx, double (*f)(double z) )
{ /* функция вычисляющая производную */
double xk,xk1,pr;
xk=fun(x);
xk1=fun(x+dx);
pr=(xk1/xk-1e0)*xk/dx;
return pr;
}
double fun( double z)
{ /* функция от которой вычисляется производная */
return (cos(z));
}

Спасибо!


 
MBo ©   (2003-03-17 06:19) [1]

по определению производная есть предел отношения (т.е. просто малое dx берешь)

F"=(F(x+dx)-F(x))/dx
На Паскале уж сам запиши


 
ZmeiGorin ©   (2003-03-17 09:44) [2]


type TFunctionOfOneArg=function(x:double):double;

function Deriv(x,dx:double;f:TFunctionOfOneArg):double; forward;
function Func(x:double):double; forward;
.....
function Deriv(x,dx:double;f:TFunctionOfOneArg):double;
var
xk,xk1:double;
begin
xk:=f(x);
xk1:=f(x+dx);
result:=(xk1/xk-1)*xk/dx;
end;

function Func(x:double):double;
begin
result:=cos(x);
end;


А можно поломать голову и заставить его считать аналитически :-)


 
Radionov Alexey ©   (2003-03-17 10:28) [3]

>F"=(F(x+dx)-F(x))/dx
При тех же затратах, но с лучшим порядком малости O(dx^2)

F"(x)=(F(x+dx)-F(x-dx))/(2*dx)



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
6-88107
Sirus
2002-12-23 14:57
2003.03.27
Как полуить текст HTML Документа из TWebBrowser???


3-87796
Alex-W
2003-03-07 15:33
2003.03.27
Проблема с QuickRep!


4-88305
LeReve
2003-01-30 23:02
2003.03.27
Есть ли АПИ сжатия данных????


14-88189
Дмитрий К.К.
2003-03-11 06:27
2003.03.27
Именинники 11 марта


14-88175
konstantinov
2003-03-10 10:18
2003.03.27
Книги, справочники по ассамблеру. Где найти?