Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Контрольная работа по "Информатике"

Автор:   •  Ноябрь 13, 2018  •  Контрольная работа  •  361 Слов (2 Страниц)  •  297 Просмотры

Страница 1 из 2

1.) Необходимо решить уравнение :

x^3+2x^2+3x+5=0

взяв в качестве начального приближения x0=-2 и задав точность е=0.000001

#include

#include

#include

using namespace std;

double Rech1(double x)

{

        return pow(x,3)+2*pow(x,2)+3*x+5;

}

double Rech2(double x)

{

        return 3*pow(x,2)+4*x+3;           //Производная

}

void main()

{

        double x = -2, x0 = -2;

        double e = 0.000001;

        do

        {

                x0 = x;

                x = x0 - Rech1(x)/Rech2(x);

        }

        while (fabs(x0-x)>e);

        cout << setprecision (6)<

        cin.get();

}

 2.)Необходимо решить уравнение :

 aX^3+bX^2+cX+d=0

 #include

#include

#include

 

using namespace std;

 

double f(double x) { return cos(x)-x+1; } //Функция, нули которой ищем

double df(double x) { return -sin(x)-1; } //Её производная

 

int main() {

 double tmp,x,eps;

 int N=0;

 

 cout<<"eps=";

 cin>>eps;   //Точность

 cout<<"x0=";

 cin>>x;     //Начальное приближение

 tmp=x+2*eps;

    while(fabs(x-tmp)>eps) { //Выбран останов |x[n]-x[n+1]|

     tmp=x;

     x=x-f(x)/df(x);

     N++;

   }

   cout.setf(ios::scientific);

cout<

cin>>N;

return 0;

}

3.)

typedef double (*function)(double x);

double TangentsMethod(function f, function df, double xn, double eps) {

   double x1  = xn - f(xn)/df(xn);

   double x0 = xn;

   while(abs(x0-x1) > eps) {

      x0 = x1;

      x1 = x1 - f(x1)/df(x1);

   }

   return x1;

}

//Выбор начального приближения

xn = MyFunction(A)*My2Derivative(A) > 0 ? B : A;

double MyFunction(double x) { return (pow(x, 5) - x - 0.2); } //Ваша функция

...

Скачать:   txt (2.2 Kb)   pdf (110.6 Kb)   docx (11 Kb)  
Продолжить читать еще 1 страницу »
Доступно только на Essays.club