Вычисление значения функции разложением в ряд Тейлора - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста составить алгоритм и написать код программы, вычисляющей значения суммы ряда S при заданных с консоли начальном и конечном значениях аргумента x (x_nach, x_kon), шаге его изменения delta_x и точности вычислений eps. Вычисленные значения ряда сравнить со значениями функции f=(x). Результаты вычислений вывести в виде таблицы с заголовком.

Решение задачи: «Вычисление значения функции разложением в ряд Тейлора»

textual
Листинг программы
#include<stdio.h>
#include<math.h>
double fun(double x,double eps);
int main(void)
{
    double x_nach,x_kon,delta_x,eps;
    printf("input: x_nach, x_kon, delta_x, eps\n");
    scanf("%lf%lf%lf%lf",&x_nach, &x_kon, &delta_x, &eps);
    printf("       X         S     f(x)\n");
    while(x_nach<=x_kon)
    {
        printf("%10.6lf%10.6lf%10.6lf\n",x_nach,fun(x_nach,eps),asin(x_nach));
        x_nach+=delta_x;    
    }
    return 0;
}
double fun(double x,double eps)
{
    int n=1;
    double x0=x,x1,t,t1,s=x;
    t=1.0*n/(n+1);
    t1=x*x*x;
    x1=t1*t/(n+2);  
    while(fabs(x1-x0)>=eps)
    {
        s+=x1;
        n+=2;
        t*=1.0*n/(n+1);
        t1*=x*x;
        x0=x1;
        x1=t1*t/(n+2);  
    }
    return s;
}

Объяснение кода листинга программы

  1. Включаются необходимые заголовочные файлы: iostream.h и math.h
  2. Определяется функция fun, которая принимает два аргумента типа double: x и eps.
  3. В функции main считываются значения переменных x_nach, x_kon, delta_x и eps с помощью функции scanf.
  4. Выводится шапка таблицы с названиями и значениями переменных.
  5. Задается цикл, который будет выполняться, пока значение переменной x_nach не станет больше или равно значению переменной x_kon.
  6. Внутри цикла выводятся значения переменных x_nach, fun(x_nach, eps) и asin(x_nach) с заданной точностью.
  7. Значение переменной x_nach увеличивается на значение переменной delta_x после каждой итерации цикла.
  8. В функции fun инициализируются начальные значения переменных: x0, x1, t, t1 и s. Значение переменной n устанавливается равным 1.
  9. Вычисляется значение t, которое используется для вычисления значения x1 на каждой итерации цикла.
  10. Вычисляется значение x1 на каждой итерации цикла с использованием вычисленного значения t.
  11. Пока разница между значениями x1 и x0 больше или равна заданной точности eps, выполняется цикл.
  12. На каждой итерации цикла значение переменной s увеличивается на значение x1.
  13. Значение переменной n увеличивается на 2 на каждой итерации цикла.
  14. Вычисляется новое значение t, используя новое значение n.
  15. Вычисляется новое значение x1 на каждой итерации цикла с использованием нового значения t.
  16. Значение переменной x0 заменяется значением x1 после каждой итерации цикла.
  17. Значение переменной x1 заменяется новым значением x1 после каждой итерации цикла.
  18. Цикл выполняется до тех пор, пока условие не будет выполнено.
  19. Функция fun возвращает значение переменной s.
  20. В функции main выводится таблица с результатами вычислений.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.75 из 5
Похожие ответы