Вариант 19

Функция:
Функция. Ряд Тейлора. Девятнадцатый вариант. Циклы
Множитель для вычисления последующего члена ряда:

Код программы:

//---------------------------------------------------------------------------
#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<windows.h>
#include <vcl.h>
#pragma hdrstop
#pragma argsused
//---------------------------------------------------------------------------
char *rus(const char *text);
int main(int argc, char* argv[])
{
 const int maxiter=500;
 int n;
 double x,eps=DBL_EPSILON;
 cout<<rus("Введите любые значения x, где x изменяется  |x|<1:")<<endl;
 cout<<rus("Введите аргумент x=");cin>>x;
 long double arcsin=1,y=arcsin;
 for(n=1;fabs(arcsin)>eps;n++)
  {
   arcsin*=(((2*n*(pow((2*n+1),2))*x*x))/((2*n+2)*(2*n+3)*(2*n-1)));
   y+=(x+arcsin);
   if(n<maxiter)
    {
     cout<<rus("\nЗначение функции y=")<<y;cout<<rus(" для x=")<<x;
     cout<<rus(" вычислено после ")<<n;cout<<rus(" итераций")<<endl;
    }
   else
    {
     cout<<rus("\nРяд расходится!");
     break;
    }
  }
 getch();
 return 0;
}
//---------------------------------------------------------------------------
char bufrus[256];
char* rus(const char* text)
 {
  CharToOem(text, bufrus);
  return bufrus;
 }
//---------------------------------------------------------------------------

Результат работы программы:

Введите любые значения x, где x изменяется |x|<1:
Введите аргумент x=0.1

Значение функции y=1.109 для x=0.1 вычислено после 1 итераций
Значение функции y=1.20907 для x=0.1 вычислено после 2 итераций
Значение функции y=1.30907 для x=0.1 вычислено после 3 итераций
Значение функции y=1.40907 для x=0.1 вычислено после 4 итераций
Значение функции y=1.50907 для x=0.1 вычислено после 5 итераций
Значение функции y=1.60907 для x=0.1 вычислено после 6 итераций
Значение функции y=1.70907 для x=0.1 вычислено после 7 итераций
Значение функции y=1.80907 для x=0.1 вычислено после 8 итераций
Вариант 18
Вариант 20
error: Content is protected !!
Adblock
detector