Вычислить функцию f(x), используя ее разложение в степенной ряд . - Pascal ABC
Формулировка задачи:
Для х изменяющегося от a до b с шагом (b-a)/k, где (k=10), вычислить функцию f(x), используя ее разложение в степенной ряд в двух случаях:
а) для заданного n;
б) для заданной точности e (e=0.0001).
Для сравнения найти точное значение функции.
функция: y=exp(x);
диапазон: 1<=x<=2;
n:=15;
сумма: S=1+(x/1!)+((x^2)/2!)+....+(x^n/n!)
Решение задачи: «Вычислить функцию f(x), используя ее разложение в степенной ряд .»
textual
Листинг программы
function f1(x:real;n:integer):real; var i:integer; t,s:real; begin t:=1; s:=t; for i:=1 to n do begin t:=t*x/i; s:=s+t; end; f1:=s; end; function f2(x,e:real):real; var t,s:real; n:integer; begin t:=1; s:=t; n:=0; while abs(t)>e do begin n:=n+1; t:=t*x/n; s:=s+t; end; f2:=s; end; var x,e,h:real; n:integer; begin repeat write('Введите n>0 n='); readln(n); until n>0; e:=0.0001; h:=1/15; x:=1; writeln('-------------------------------------------------------------'); writeln('| x | y при заданном n | y при заданной точности | exp(x) |'); writeln('-------------------------------------------------------------'); repeat writeln('|',x:5:2, '|', f1(x,20):13:4,' |',f2(x,e):17:4,' |',exp(x):8:4,'|'); x:=x+h; until x>2; writeln('--------------------------------------------------------------'); end.
Объяснение кода листинга программы
- Тип программы: Паскаль ABC
- Задача программы: Вычисление функции f(x) с использованием ее разложения в степенной ряд
- Описание функций:
- f1(x,n) - вычисляет значение функции f(x) с использованием разложения в степенной ряд до степени n
- f2(x,e) - вычисляет значение функции f(x) с использованием разложения в степенной ряд до степени, при которой абсолютное значение члена ряда меньше заданной точности e
- Описание переменных:
- x - значение аргумента функции f(x)
- e - заданная точность вычислений
- h - шаг изменения аргумента x при вычислении значений функции
- Цикл программы:
- Пользователю предлагается ввести значение n > 0
- Пока значение n не удовлетворяет условию, программа повторяет запрос на ввод
- Значение e устанавливается равным 0.0001
- Значение h устанавливается равным 1/15
- Значение x устанавливается равным 1
- Выводится шапка таблицы с именами столбцов
- В цикле программа выводит значения функции f(x) для различных значений x, пока x не станет больше 2
- Выводится нижняя строка таблицы
- Вывод программы:
- При запуске программы, в консоли будет выведена таблица с значениями функции f(x) для различных значений x и различными степенями разложения в степенной ряд
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д