Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Различные алгоритмы минимизации, реализованные в С++ / all / NYTON1
.CPP#include <iostream.h>
#include <math.h>
#include <conio.h>
double F(double x)
{
if( x < 0.0 )
return 4*pow(x,3)+3*pow(x,4);
else
return 4*pow(x,3)-3*pow(x,4);
}
double dF(double x)
{
if( x < 0.0 )
return 12*x*x+12*pow(x,3);
else
return 12*x*x-12*pow(x,3);
}
double ddF(double x)
{
if( x < 0.0 )
return 24*x+36*x*x;
else
return 24*x-36*x*x;
}
void main()
{
clrscr();
double x1,t;
double e = 0.001;
double x = 0.4;
int k = 0;
x1 = x - dF(x)/ddF(x);
while(!((fabs(x - x1) <= e)&&(dF(x) <=e )))
{
x1 = x - dF(x)/ddF(x);
t = x1; x1 = x; x = t;
k++;
}
cout<<endl;
cout<<"\n ЊҐв®¤ Ќмов® ";
cout<<"\n ‡ 票Ґ ¬ЁЁ¬г¬ x = "<<x;
cout<<"\n Љ®«ЁзҐбвў® ЁвҐа жЁ© k = "<<k;
getch();
}
Соседние файлы в папке all