|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Практическое задание N 1. 15
Определить число членов ряда, необходимых для расчета с заданной погрешностью суммы членов ряда:
N Вид ряда Общий член ряда Сумма N= 1 1- 1 / 22 + 1 / 32 - 1 / 42 +... (-1)(N-1) / N2 Pi2 / 12 1, 2, 3,... 2 1- 1 / 3 + 1 / 5 - 1 / 7 +... (-1)N / (2*N+1) Pi / 4 0, 1, 2,... 3 1 / (1*2) + 1 / (2*3) + 1 / (3*4) +... 1 / (N*(N+1)) 1 1, 2, 3,... 4 1 / (1*3) + 1 / (3*5) + 1 / (5*7) +... 1 / ((2*N-1)*(2*N+1)) 1 / 2 1, 2, 3,... 5 1- 1 / 1! + 1 / 2! - 1 / 3! +... (-1)N / N! 1 / e 0, 1, 2,... 6 1+ 1 / 1! + 1 / 2! + 1 / 3! +... 1 / N! e 0, 1, 2,...
Если члены ряда являются функциями аргумента "x", то ряд называется функциональным. Расчет многих функций производится разложением функции в степенной ряд. Приведем пример расчета значения функции y=sin(x) при некотором значении "х" с использованием представления функции в виде ряда:
y1 = x - x3/3! +... + (-1)(N+1) * x(2*N+1)/(2*N+1)! +... где a0= x, aN= k * aN-1, k= (-x2)/(2*N*(2*N+1)), N= 0, 1, 2,...
Kаждый член ряда аN при N>0 можно получить умножением предыдущего члена ряда aN-1 на коэффициент k. Приближенное значение функции y=sin(x) находится как частичная сумма "N" членов ряда. Погрешность вычисления значения функции "у" при некотором значении "х" зависит от количества членов ряда и значения "х", поэтому расчет заканчивается при |aN| < eps, где eps - допустимая погрешность расчетов. В программе используем цикл с условием, например:
PROGRAM SIN_R; Var y, y1, x, eps, a, k: real; n: Word; Begin Writeln('Вычисление y=sin(x) с использованием ряда!'); Write('Введите значение аргумента x='); readln(x); Write('Введите значение погрешности еps='); readln(eps); Writeln; y:= sin(x); n:= 0; a:= x; { a - первый член ряда } y1:= a; { y1 - первая частичная сумма ряда } While abs(a) > eps do begin n:= n+1; k:= -x*x/(2*n*(2*n+1)); a:= a*k; y1:= y1+a; Writeln('Приближенное значение функции y1=', y1:-11:8, ' _ _ при n=', n) end; Writeln('Контрольное значение функции y=sin(x)= ', y:-11:8); Writeln('Нажмите Enter'); readln; End.
Применение оператора Repeat... в данном примере имеет вид:
Repeat "операторы" Until abs(a) < eps;
Операторы цикла с условием могут применяться для анализа правильности вводимых данных. Контроль входных данных обязателен для рядов, сходящихся не во всей области "X", например, |X|<1 при разложении функции arctg(x) в степенной ряд. В этом случае можно использовать "защиту от дурака", например:
Repeat Write('введите значение |х|<1;_ _x='); readln(x) until abs(x)<1;
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |