Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Лабораторная работа:нахождение суммы ряда

Содержание

Основы программирования/PascalПостановка задачиДаны действительные числа x, eps (|x|0) . Вычислить значение функции f(x) для данного х с помощью разложения этой функции в ряд с точностью eps. Решим для функции sin x:
Лабораторная работа: нахождение суммы рядаИспользование оператора цикла с предусловием Основы программирования/PascalПостановка задачиДаны действительные числа x, eps (|x|0) . Вычислить значение функции Основы программирования/PascalНайдем несколько первых слагаемых ряда: Основы программирования/PascalНапример, для х = 0,5 значение первых пяти слагаемых ряда равно Основы программирования/PascalВидно, что вклад каждого последующего слагаемого существенно меньше предыдущего. То есть Основы программирования/PascalДля нахождения суммы требуется последовательно находить слагаемые до тех пор, пока Основы программирования/PascalДля нахождения слагаемых можно воспользоваться формулой но проще и быстрее использовать Основы программирования/PascalВыведем рекуррентное соотношение.Первое слагаемое находим по формуле. У нас оно равно Основы программирования/PascalФормула для каждого слагаемого:Подставим вместо индекса i индекс i-1:Найдем отношение ai(x) ai-1(x): Основы программирования/PascalТаким образом, рекуррентное соотношение будет иметь вид:Используем это соотношение в программе: Основы программирования/Pascalprogram ExSin;uses Crt;const imax = 10000; {максимальное 					количество слагаемых}var X, X2 Основы программирования/Pascalbegin ClrScr; {Ввод} writeln(‘Нахождение значения функцииF(X)=sin(X)'); writeln(‘через ее разложение в ряд.'); Основы программирования/Pascal {Нахождение суммы ряда с точностью eps} a:=X; Основы программирования/Pascal {Вывод ответа} writeln; if i Основы программирования/Pascal Для тестирования работы программы используем систему тестов: Основы программирования/PascalПо итогам работы подготовить отчет:Титульный листПостановка задачиМетод решенияВывод рекуррентного соотношенияТекст программы (с комментариями)Таблица тестовВывод
Слайды презентации

Слайд 2 Основы программирования/Pascal
Постановка задачи
Даны действительные числа x, eps (|x|

Основы программирования/PascalПостановка задачиДаны действительные числа x, eps (|x|0) . Вычислить значение

eps>0) . Вычислить значение функции f(x) для данного х

с помощью разложения этой функции в ряд с точностью eps.
Решим для функции sin x:


Слайд 3 Основы программирования/Pascal



Найдем несколько первых слагаемых ряда:


Основы программирования/PascalНайдем несколько первых слагаемых ряда:

Слайд 4 Основы программирования/Pascal
Например, для х = 0,5 значение первых

Основы программирования/PascalНапример, для х = 0,5 значение первых пяти слагаемых ряда равно

пяти слагаемых ряда равно


Слайд 5 Основы программирования/Pascal





Видно, что вклад каждого последующего слагаемого существенно

Основы программирования/PascalВидно, что вклад каждого последующего слагаемого существенно меньше предыдущего. То

меньше предыдущего. То есть по модулю они уменьшаются.
Требуемая точность

считается достигнутой, если модуль очередного слагаемого станет меньше заданного близкого к нулю числа eps.
Например, если eps=0.000001, то уже на пятом слагаемом суммирование можно прекратить, а найденную сумму объявить ответом.

Слайд 6 Основы программирования/Pascal
Для нахождения суммы требуется последовательно находить слагаемые

Основы программирования/PascalДля нахождения суммы требуется последовательно находить слагаемые до тех пор,

до тех пор, пока очередное из них не станет

по модулю меньше eps:





Слайд 7 Основы программирования/Pascal
Для нахождения слагаемых можно воспользоваться формулой


но

Основы программирования/PascalДля нахождения слагаемых можно воспользоваться формулой но проще и быстрее

проще и быстрее использовать рекуррентное соотношение, позволяющее находить каждое

новое слагаемое через предыдущее:

Слайд 8 Основы программирования/Pascal
Выведем рекуррентное соотношение.
Первое слагаемое находим по формуле.

Основы программирования/PascalВыведем рекуррентное соотношение.Первое слагаемое находим по формуле. У нас оно равно

У нас оно равно


Слайд 9 Основы программирования/Pascal
Формула для каждого слагаемого:
Подставим вместо индекса i

Основы программирования/PascalФормула для каждого слагаемого:Подставим вместо индекса i индекс i-1:Найдем отношение ai(x) ai-1(x):

индекс i-1:
Найдем отношение ai(x) ai-1(x):


Слайд 10 Основы программирования/Pascal
Таким образом, рекуррентное соотношение будет иметь вид:
Используем

Основы программирования/PascalТаким образом, рекуррентное соотношение будет иметь вид:Используем это соотношение в программе:

это соотношение в программе:


Слайд 11 Основы программирования/Pascal
program ExSin;
uses Crt;

const
imax = 10000; {максимальное

Основы программирования/Pascalprogram ExSin;uses Crt;const imax = 10000; {максимальное 					количество слагаемых}var X,

количество слагаемых}
var
X, X2 :

real;
s,a : real;
EPS : real;
i : word;


Программа вычисления значения функции разложением в ряд (часть 1):


Слайд 12 Основы программирования/Pascal
begin
ClrScr;

{Ввод}
writeln(‘Нахождение значения функцииF(X)=sin(X)');
writeln(‘через

Основы программирования/Pascalbegin ClrScr; {Ввод} writeln(‘Нахождение значения функцииF(X)=sin(X)'); writeln(‘через ее разложение в

ее разложение в ряд.');

repeat
write(‘Введите аргумент X

(|X|<1): ');
readln(X);
until (abs(X)<1);

repeat
write(‘Введите точность EPS (EPS>0): ');
readln(EPS);
until (EPS>0);

Программа вычисления значения функции разложением в ряд (часть 2):


Слайд 13 Основы программирования/Pascal
{Нахождение суммы ряда с точностью eps}

Основы программирования/Pascal {Нахождение суммы ряда с точностью eps} a:=X;

a:=X; {Очередное слагаемое}
i:=1;

{Индекс слагаемого}
s:=a; {Сумма ряда. Начинаем с a1}
X2:=sqr(X); {Квадрат Х. Для вычислений.}

while (abs(a)>EPS) and (i<=imax) do
{пока не достигнута точность}
begin
inc(i); {Увеличиваем индекс на 1}
a:=a*(-X2/(2*i-2)/(2*i-1));{Находим следующее слагаемое через предыдущее}
s:=s+a; {Прибавляем слагаемое к сумме}
end;

Программа вычисления значения функции разложением в ряд (часть 3):


Слайд 14 Основы программирования/Pascal
{Вывод ответа}
writeln;
if i

Основы программирования/Pascal {Вывод ответа} writeln; if i

begin
writeln(‘Значение функции F(x)=sin x');
writeln('F(X)=',s:14:12,’–с помощью

ряда;');
writeln('F(X)=',sin(X):14:12,’–станд.функция');
end
else
writeln(‘не найдено. Ряд расходится.');

{Задержка до нажатия на любую клавишу}
writeln(‘Нажмите любую клавишу...');
repeat
until Keypressed;
end.

Программа вычисления значения функции разложением в ряд (часть 4):


Слайд 15 Основы программирования/Pascal
Для тестирования работы программы используем систему

Основы программирования/Pascal Для тестирования работы программы используем систему тестов:

тестов:


  • Имя файла: laboratornaya-rabotanahozhdenie-summy-ryada.pptx
  • Количество просмотров: 91
  • Количество скачиваний: 0