Главная страница
    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.44 MB
Время: 0.007 c
1-87989
Begemot
2003-03-13 17:54
2003.03.27
отделение одно цифры запятой


14-88139
Danilka
2003-03-05 09:25
2003.03.27
Выстраданый совет...


6-88104
dimich1978
2003-02-05 08:32
2003.03.27
Помогите с правильным написанием обращения к процедуре?


14-88230
Мыш
2003-03-10 06:26
2003.03.27
Регистрация


7-88273
mmmh
2003-02-01 01:15
2003.03.27
Люди помогите спрятать кнопки от всех форм с панели задач





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский