Изучение организации итерационных алгоритмов на примерах

Лабораторная работа № 6

Итерационные методы.

Цель:

изучить процесс построения алгоритмов с неведомым числом повторений. Научиться составлять программки, использующие рекуррентные формулы. Изучить оператор бесспорного перехода Goto.

Итог обучения:после удачного окончания занятия юзер должен:

o уметь составлять схемы итерационных алгоритмов;

o знать, что такое рекуррентная формула и как она может быть применена в методах Изучение организации итерационных алгоритмов на примерах;

o уметь программировать итерационные методы на языке VBA;

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

Циклические вычисления могут иметь или заблаговременно известное количество шагов, или они производятся до заслуги некого условия. Циклические вычисления с неведомым числом повторений, в каких число повторений определяется требуемой точностью вычислений, именуются итерационными вычислениями. Повторение последовательности операторов Изучение организации итерационных алгоритмов на примерах с проверкой условия сначала каждого прохода цикла именуется итерацией.

Пример 1.

Условие задачки:

Высчитать экспоненту с точностью e методом разложения ее в ряд: + …

Будем вычислять частичную сумму ряда правой части до того времени, пока еще одно слагаемое не станет меньше погрешности e.

Для вычисления каждого слагаемого ряда требуется строительство в Изучение организации итерационных алгоритмов на примерах степень и вычисление факториала (это дополнительный цикл). Нередко в задачках для вычисления еще одного слагаемого комфортно рекуррентно использовать предшествующее слагаемое, а не организовывать дополнительный (внутренний) цикл. В данной задачке каждое еще одно слагаемое можно рекуррентно вычислить через предшествующее: , что просит всего 2-ух операций. Такая форма записи, в какой Изучение организации итерационных алгоритмов на примерах каждый последующий элемент расчета может быть получен из предшествующего, именуется рекуррентной формой.

При построении таких алгоритмов полезно подстраховаться от зацикливания («вечного цикла»). Зацикливания могут появиться из – за ошибок в программке либо вследствие скопления погрешностей. Чтоб избежать зацикливания, довольно поставить предел числа повторений цикла.

При построении метода примем последующие обозначения:

S Изучение организации итерационных алгоритмов на примерах — разыскиваемая сумма, U — текущее слагаемое получаемое рекуррентно, n — определяет число шагов и употребляется для расчета факториала в знаменателе слагаемого.

Схема метода:

Форма Программка
Private Sub CommandButton1_Click() Dim x As Single, Exp As Single, S As Single, U As Single Dim n As Integer Const Limit = 100 'Пред. знач Изучение организации итерационных алгоритмов на примерах. шагов задано константой x = Val(TextBox1.Text) Eps = Val(TextBox2.Text) S = 1 'Частичная сумма U = 1 '1-ое слагаемое n = 1 'Число шагов Do U = x / n * U : S = S + U : n = n + 1 Loop Until (Абс(U) = Limit) If n >= Limit Then Label3.Caption = Str(n) + " шагов не хватило" Else Label3.Caption Изучение организации итерационных алгоритмов на примерах = Str(S) + " " + "n=" + Str(n) End If End Sub

Если для организации цикла в этой задачке использовать оператор цикла For, то в данном случае нужно организовать принудительный выход из цикла. Предельное значение параметра цикла будет определяться лимитом числа повторений тела цикла. Как выполнится условие |U| £ e, следует выход Изучение организации итерационных алгоритмов на примерах из цикла.

Принудительный выход из цикла в программке на VBA можно организовать, используя оператор перехода Goto. Синтаксис оператора:

Goto ;

После выполнения такового оператора, управление программкой передается оператору, помеченному меткой. Меткой может быть идентификатор либо целое число без знака.

Программка решения задачки:

Форма Программка
Private Sub CommandButton1_Click() Dim x As Single Изучение организации итерационных алгоритмов на примерах, Exp As Single, S As Single, U As Single Dim n As Integer Const Limit = 100 x = Val(TextBox1.Text) Eps = Val(TextBox2.Text) S = 1: U = 1 For n = 1 To Limit U = x / n * U: S = S + U If (Абс(U) <= Eps) Then GoTo M1 'Выход из цикла Next n Изучение организации итерационных алгоритмов на примерах 'Цикл доработал до конца Label3.Caption = Str(n) + " Шагов не хватило": GoTo M2 M1: Label3.Caption="Расчетное знач=" + Str(S)+ "n="+ Str(n) M2: End Sub

В программке употребляются два оператора перехода. 1-ый оператор перехода Goto M1 организует принудительный выход из цикла. Последующим выполняемым оператором будет оператор Изучение организации итерационных алгоритмов на примерах, помеченный меткой М1. После идентификатора метки ставится двоеточие. 2-ой оператор перехода Goto M2 организует обход вывода, ненадобного в этом случае.

Считается, что внедрение оператора Goto затрудняет чтение программки.

Самостоятельная работа

Составить схему метода, написать и отладить программку в согласовании с вариантом.

Задачка e
Высчитать сумму нескончаемого ряда 10-5
Высчитать сумму нескончаемого ряда 0.5 10-4
Вычислить Изучение организации итерационных алгоритмов на примерах 1-ое значение функции z = xk / k, большее а, если k = 1, 2, 3, …
Найти, имеются ли посреди чисел Cos(i3)sin(I*n), i = 1,2, …,n, наименьшие 0.0001. 0.5 10-4
Высчитать сумму нескончаемого ряда 10-4
Дано а. Отыскать посреди чисел 1+1/2, 1+1/2+1/3, 1+1/2+1/3+1/4,… 1-ое большее а.
Высчитать сумму нескончаемого ряда 0.5 10-3
Высчитать сумму нескончаемого ряда 10-4
Дано а. Отыскать такое меньшее Изучение организации итерационных алгоритмов на примерах n, что 1+1/2+…+1/n > a.
Дано а и х (x<1). Отыскать номер слагаемого, при котором сумма 1/X+1/X2+1/X3+1/X4, … станет больше a.
Высчитать сумму нескончаемого ряда 10-4
Последовательность задана формулой sin2(3k+5)-cos(k2-15), где k = 1, 2, 3, …100. Найти, сколько членов последовательности имеют значение наименьшее 0,25.
Последовательность задана формулой , где i = 1, 2, 3, …n. Отыскать сумму Изучение организации итерационных алгоритмов на примерах всех положительных чисел.
Высчитать сумму нескончаемого ряда 10-4
Вычислить Х = для данного значения а, используя рекуррентное соотношение: ; Х0=а.


izuchenie-faktorov-vliyayushih-na-velichinu-potrebitelskih-rashodov-daet-vozmozhnost-vivesti-funkciyu-potrebleniya.html
izuchenie-fokusiruyushih-svojstv-zonnoj-plastinki.html
izuchenie-funkcionirovaniya-organizacii.html