Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторные работы №3_4_5_6 / LAB6
.CPP#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream.h>
extern double F(double);
double ITER(double X0,double Eps,int &N)
{
if (Eps<=0.0) {puts("ЌҐўҐа®Ґ § ¤ ЁҐ в®з®бвЁ\n");exit (1);}
double X1=F(X0);
double X2=F(X1);
N = 2;
while( (X1 - X2)*(X1 - X2) > fabs((2*X1-X0-X2)*Eps) )
{
X0 = X1;
X1 = X2;
X2 = F(X1);
N++;
}
return(X2);
}
//------------------------------------------------------------------------
double Round (double X,double Delta)
{
if (Delta<=1E-9) {puts("ЌҐўҐа®Ґ § ¤ ЁҐ в®з®бвЁ ®ЄагЈ«ҐЁп\n");exit(1);}
if (X>0.0) return (Delta*(long((X/Delta)+0.5)));
else return (Delta*(long((X/Delta)-0.5)));
}
//-------------------------------------------------------------------------
//-------------------------- End of module --------------------------------
double c, d;
double F(double x)
{
return atan(1/x);
}
//------------------------------------------------------------------------
void main()
{
double delta, X0, Eps;
cout<<"\nX0 - з «м®Ґ ЇаЁЎ«Ё¦ҐЁҐ Є®ап: ";
cin>>X0;
cout<<"\n‚ўҐ¤ЁвҐ Є®нддЁжЁҐв в®з®бвЁ ўлзЁб«ҐЁ©: ";
cin>>Eps;
cout<<"\n‚ўҐ¤ЁвҐ Є®нддЁжЁҐв в®з®бвЁ ®ЄагЈ«ҐЁп: ";
cin>>delta;
double x;
int k;
x=HORDA(X0,Eps,k);
x=Round(x,delta);
cout<<"\nx= "<<x;
cout<<"\nЉ®«ЁзҐбвў® и Ј®ў ЇаЁ ўлзЁб«ҐЁЁ: "<<k;
}
Соседние файлы в папке Лабораторные работы №3_4_5_6