2. Итерация
- это организация обработки данных, при
которой действия повторяются многократно,
не приводя при этом к вызовам самих себя.
Для реализации итерации используются циклы
9. S предыдущая
S начальная = 0
S = 0 + 1
S = 0 + 1 + 2
S предыдущая
S = S + 1
S предыдущая
S предыдущая
S = S + 2
S = 0 + 1 + 2 + 3
S = 0 + 1 + 2 + 3 + 4
S предыдущая
S = 0 + 1 + 2 + 3 + 4 + 5
S = S + 3
S = S + 4
S = S + 5
Разбор задачи
10. Решение задачи
Dim S, i As Integer
Private Sub Button1_Click
S = 0
i = 1
Do While i <= 5
S = S + i
i = i + 1
Loop
TextBox1.Text = S
End Sub
11. Рекурсия
(лат. recurrere - возвращение назад)
процесс повторения чего-либо самоподобным
способом.
Примеры.
«Смысл жизни — в достижении её цели, цель
жизни — в наполнении её смыслом»
“Чтобы понять рекурсию, нужно
сначала понять рекурсию”.
12. Примеры рекурсии
1. «Если у Вас украли кредитную карту позвоните
по телефону, указанному на оборотной стороне
кредитной карты».
2. Бюрократия разрастается чтобы удовлетворить
нужды разрастающейся бюрократии.
3. 1. Начальник всегда прав. 2. Если начальник не
прав смотреть п. 1.
14. Описание рекурсии
1. Общее правило, по которому решение
задачи в сложном случае сводится к решению
такой же задачи, но в более простом случае;
2. условие, при котором дальнейшее
упрощение нужно прекратить (терминальное
условие).
15. Применение рекурсии
Составить блок-схему алгоритма
вычисления суммы чисел от 1 до 5.
Разработать приложение в системе
программирования Visual Studio 2010.
Для решения задачи использовать рекурсию.
16. Решение задачи
Воспользуемся методом «обратного хода».
S(5)=5+4+3+2+1=5+S(4)
S(4)=4+3+2+1=4+S(3)
S(3)=3+2+1=3+S(2)
S(2)=2+1=2+S(1)
S(1)=1
S(X)=X+S(X-1)
Общее правило
Терминальное условие
18. Решение задачи
Для решения задачи опишем
пользовательскую функцию S
Public Class Form1
Dim X As Integer
Function S(ByVal X) As Integer
If X = 1 Then
S = 1
Else
S = X + S(X - 1)
End If
End Function
Private Sub Button1_Click…
TextBox1.Text = S(5)
End Sub
End Class