SlideShare a Scribd company logo
1 of 26
Лекція 5-6.
Тема:
Алгоритмізація та програмування
задач циклічної структури
План
1. Поняття циклу, типи циклів
2. Організація лічильного циклу з
використанням операторів FOR – NEXT
3. Використання лічильних циклів при
обчисленнях сум, добутків та
факторіалів
4. Ітераційні цикли
4.1. Ітераційні цикли з передумовою
4.2. Ітераційні цикли з післяумовою
4.3. Приклади
Поняття циклу, типи циклів
В багатьох задачах обчислення виконується за одними і тими ж формулами, але
при різних значеннях величин, які в них входять. Такий обчислювальний
процес називається циклічним.
Дії, які повторюються, називаються тілом циклу. Змінна, значення якої змінюється
в циклі, називається параметром циклу. Саме параметр управляє циклом.
Цикли поділяються на:
1. Лічильні
2. Ітераційні
3. Складні
Організація лічильного циклу з використанням операторів FOR –
NEXT
До лічильних циклів відносяться ті цикли, для яких відома кількість
повторень виконання тіла циклу.
Лічильні цикли організують за допомогою операторів FOR ……NEXT.
Формат лічильного циклу:
FOR параметр = XN TO XK [STEP DX]
тіло циклу
NEXT параметр
де XN – початкове значення;
XK – кінцеве значення;
DX – значення кроку.
dxxkxnпараметр ;;=
Тіло цикла
Організація лічильного циклу з використанням операторів FOR – NEXT
Якщо ключове слово STEP відсутнє, то за замовченням значення
кроку
DX =1
Крок може бути від’ємним, тоді початкове значення повинно бути
більше ніж кінцеве XN>XK.
Підрахувати кількість кроків можна за формулою:
де ] [ - ціла частина числа.
1+




 −
=
DX
XNXK
n
Організація лічильного циклу з використанням операторів FOR – NEXT
Алгоритм роботи лічильного циклу FOR – NEXT:
На першому кроці
параметр= XN
Після чого виконується тіло циклу.
Оператор NEXT виконує наступні дії:
• Обчислюється наступне значення параметру
• параметр= параметр+DX
• Нове значення параметра порівнюється з кінцевим значенням XK
параметр<=XK
Якщо нове значення параметру не більше кінцевого значення , то
виконується тіло циклу при новому значенні параметра.
Якщо нове значення параметру більше кінцевого значення
параметр>XK ,
то виконується вихід з циклу і управління передається наступному за NEXT
оператору.
Організація лічильного циклу з використанням операторів FOR –
NEXT
Приклад 1:
Обчислити значення функції Q. Аргумент x змінюється від xn до xk
з кроком dx. Вивести значення аргументу та функції у вигляді
таблиці.
xn = –6.8, xk =6.2, dx =2
y=6
Результати табуляції функції вивести на Лист1 Excel
4
2
sin
y
xy
y
Q +
+
=
Організація лічильного циклу з використанням операторів FOR – NEXT
Схема алгоритму:
Організація лічильного циклу з використанням операторів FOR – NEXT
Результат:
Організація лічильного циклу з використанням операторів FOR – NEXT
Приклад 2:
Обчислити значення функції
Результати вивести на форму у вигляді двох стовпчиків. У першому
розміщується значення аргументу x, а у другому – значення функції y.
[ ] 6,03,2;5,3
1,9,4
10,sin
0,
2
2
=−∈







>−
≤≤
<
=
dxx
xякщоx
xякщоx
xякщоx
y
Організація лічильного циклу з використанням операторів FOR – NEXT
Схема алгоритму прикладу 2:
Організація лічильного циклу з використанням операторів FOR – NEXT
Програмний код:
Організація лічильного циклу з використанням операторів FOR – NEXT
Результат прикладу 2:
Використання лічильних циклів при обчисленнях сум, добутків та факторіалів
Приклад 3:
Обчислити суму доданків
∑= +
=
8
1 1
1
i i
S
81
1
.....
31
1
21
1
11
1
1
18
1 +
++
+
+
+
+
+
=
+
= ∑=i i
S
Використання лічильних циклів при обчисленнях сум, добутків та факторіалів
Програмний код:
Використання лічильних циклів при обчисленнях сум, добутків та
факторіалів
Приклад :
Обчислити добуток множників
Схема алгоритму
∏=
=
7
1
1
k k
P
Початок
P
Кінець
k =1; 7
P=1
k
PP
1
⋅=
Використання лічильних циклів при обчисленнях сум, добутків та факторіалів
• Програма • Результат
Використання лічильних циклів при обчисленнях сум, добутків та
факторіалів
Приклад .
Обчислити значення L за формулою:
де
∏∑
==
⋅−
⋅+
−⋅
⋅=
5
1
312
3
4
2
25
23
j
j
i
j
k
ii
i
mL
17,0,85,1 == km
Програма:
Private Sub CommandButton1_Click()
Dim m, k, S, D, L As Single
Dim i, j As Integer
m = Val(TextBox1)
k = Val(TextBox2)
S = 0
For i = 1 To 12
S = S + (3 * i ^ 2 - 2) / (i ^ 4 + 5 * i)
Next i
TextBox3 = S
D = 1
For j = 1 To 5
D = D * (j ^ 3 / 3 ^ j)
Next j
TextBox4 = D
L = m * S - k * D
TextBox5 = L
End Sub
Схема Початок
m, k
S=0
j=1; 5
S=
D=1
i=3; 12
D=
L=
Кінець
L
ii
i
S
⋅+
−⋅
+
5
4
2
2
3
j
j
D
2
3
⋅
DkSm ⋅−⋅
Результат:
Ітераційні цикли
Ітераційними циклами називають такі цикли, в
яких не відома кількість повторень тіла
циклу, але відома умова виконання або
припинення циклу. Ітераційні цикли
організують за допомогою операторів
DO ........... LOOP.
Ітераційні цикли розрізняють:
• з передумовою
• післяумовою
Ітераційні цикли з передумовою
DO WHILE <умова виконання циклу>
Тіло циклу
LOOP
DO UNTIL <умова припинення циклу>
Тіло циклу
LOOP
• Схема
Тіло циклу
так
умов
а
ні
Ітераційні цикли з післяумовою
DO
Тіло циклу
LOOP WHILE <умова виконання циклу >
DO
Тіло циклу
LOOP UNTIL <умова припинення циклу >
• Схема
ні
Тіло циклу
так
умов
а
Приклад :
Обчислити суму
Обчислення припинити, коли .
Вивести обчислену суму та кількість доданків.
∑
∞
=
=
1
1
k k
S
3
10,
1 −
=≤ εε
k
Private Sub CommandButton1_Click()
Dim k, n As Integer
Dim s As Single
eps = Val(TextBox1)
k = 1
s = 0
Do While 1 / k > eps
s = s + 1 / k
k = k + 1
Loop
n = k - 1
TextBox2 = s
TextBox3 = n
End Sub
Private Sub Command2_Click()
End
End Sub
• Схема
так
ні
k=1
S=0
eps
k
>
1
k
SS
1
+=
1+= kk
1−= kn
S,n
Кінець
Початок
eps
Private Sub Command1Button_Click()
Dim k As Integer
Dim s As Single
eps = Val(TextBox1)
k = 0
s = 0
Do
k = k + 1
s = s + 1 / k
Loop While 1 / k > eps
TextBox2 = s
TextBox3 = k
End Sub
Private Sub Command2_Click()
End
End Sub
• Схема:
так
ні
k=0
S=0
eps
k
>
1
k
SS
1
+=
1+= kk
S, k
Кінець
Початок
eps

More Related Content

What's hot (8)

Урок 42. Алгоритми з повтореннями для опрацювання величин. Цикл з лічильником
 Урок 42. Алгоритми з повтореннями  для опрацювання величин.  Цикл з лічильником Урок 42. Алгоритми з повтореннями  для опрацювання величин.  Цикл з лічильником
Урок 42. Алгоритми з повтореннями для опрацювання величин. Цикл з лічильником
 
завдання алгоритми
завдання алгоритмизавдання алгоритми
завдання алгоритми
 
лекції 4
лекції 4лекції 4
лекції 4
 
Тригонометричні функції тангенс і котангенс
Тригонометричні функції тангенс і котангенсТригонометричні функції тангенс і котангенс
Тригонометричні функції тангенс і котангенс
 
4
44
4
 
Lr7
Lr7Lr7
Lr7
 
функція
функціяфункція
функція
 
Реалізація циклічних алгоритмічних структур
Реалізація циклічних алгоритмічних структурРеалізація циклічних алгоритмічних структур
Реалізація циклічних алгоритмічних структур
 

Similar to лекції 5-6

урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
Helen Pat
 
Operator cikly z napametpom
Operator cikly z napametpomOperator cikly z napametpom
Operator cikly z napametpom
metallurg056
 
Operator cikly z napametpomd
Operator cikly z napametpomdOperator cikly z napametpomd
Operator cikly z napametpomd
metallurg056
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
Vasiliy66
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
Vasiliy66
 
практичне заняття3
практичне заняття3практичне заняття3
практичне заняття3
cit-cit
 

Similar to лекції 5-6 (20)

урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
 
11 клас 3 урок
11 клас 3 урок11 клас 3 урок
11 клас 3 урок
 
БазовI структури алгоритмiв. конструювання алгоритмiв
БазовI структури алгоритмiв. конструювання алгоритмiвБазовI структури алгоритмiв. конструювання алгоритмiв
БазовI структури алгоритмiв. конструювання алгоритмiв
 
Lr7
Lr7Lr7
Lr7
 
8 клас урок 41
8 клас урок 418 клас урок 41
8 клас урок 41
 
8 20
8 208 20
8 20
 
+6 for
+6 for+6 for
+6 for
 
Урок 53 8 клас
Урок 53 8 класУрок 53 8 клас
Урок 53 8 клас
 
war8klasdist3.pptx
war8klasdist3.pptxwar8klasdist3.pptx
war8klasdist3.pptx
 
Tema 9
Tema 9Tema 9
Tema 9
 
4
44
4
 
Функції в C++
Функції в C++Функції в C++
Функції в C++
 
Operator cikly z napametpom
Operator cikly z napametpomOperator cikly z napametpom
Operator cikly z napametpom
 
Урок 54 8 клас
Урок 54 8 класУрок 54 8 клас
Урок 54 8 клас
 
Operator cikly z napametpomd
Operator cikly z napametpomdOperator cikly z napametpomd
Operator cikly z napametpomd
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
 
практичне заняття3
практичне заняття3практичне заняття3
практичне заняття3
 
Презентація до курсової роботи по програмуванню
Презентація до курсової роботи по програмуваннюПрезентація до курсової роботи по програмуванню
Презентація до курсової роботи по програмуванню
 
Povtorennya(dist zavd8 klass)
Povtorennya(dist zavd8 klass)Povtorennya(dist zavd8 klass)
Povtorennya(dist zavd8 klass)
 

More from cit-cit (20)

лекція 5
лекція 5лекція 5
лекція 5
 
лаборатор. 10
лаборатор. 10лаборатор. 10
лаборатор. 10
 
лекція 19
лекція 19лекція 19
лекція 19
 
лекція 18
лекція 18лекція 18
лекція 18
 
лекція 17
лекція 17лекція 17
лекція 17
 
лекція 16
лекція 16лекція 16
лекція 16
 
лекція 12
лекція 12лекція 12
лекція 12
 
лекція 11
лекція 11лекція 11
лекція 11
 
лекція 10
лекція 10лекція 10
лекція 10
 
лаборатор. 15
лаборатор. 15лаборатор. 15
лаборатор. 15
 
лаборатор. 14
лаборатор. 14лаборатор. 14
лаборатор. 14
 
лаборатор. 13
лаборатор. 13лаборатор. 13
лаборатор. 13
 
лаборатор. 12
лаборатор. 12лаборатор. 12
лаборатор. 12
 
лаборатор. 11
лаборатор. 11лаборатор. 11
лаборатор. 11
 
лаборатор. 9
лаборатор. 9лаборатор. 9
лаборатор. 9
 
лаборатор. 8
лаборатор. 8лаборатор. 8
лаборатор. 8
 
лаборатор. 7
лаборатор. 7лаборатор. 7
лаборатор. 7
 
лекція 15 (pdf.io)
лекція 15 (pdf.io)лекція 15 (pdf.io)
лекція 15 (pdf.io)
 
лекція 14 (pdf.io)
лекція 14 (pdf.io)лекція 14 (pdf.io)
лекція 14 (pdf.io)
 
лекція 13 (pdf.io)
лекція 13 (pdf.io)лекція 13 (pdf.io)
лекція 13 (pdf.io)
 

лекції 5-6

  • 1. Лекція 5-6. Тема: Алгоритмізація та програмування задач циклічної структури
  • 2. План 1. Поняття циклу, типи циклів 2. Організація лічильного циклу з використанням операторів FOR – NEXT 3. Використання лічильних циклів при обчисленнях сум, добутків та факторіалів 4. Ітераційні цикли 4.1. Ітераційні цикли з передумовою 4.2. Ітераційні цикли з післяумовою 4.3. Приклади
  • 3. Поняття циклу, типи циклів В багатьох задачах обчислення виконується за одними і тими ж формулами, але при різних значеннях величин, які в них входять. Такий обчислювальний процес називається циклічним. Дії, які повторюються, називаються тілом циклу. Змінна, значення якої змінюється в циклі, називається параметром циклу. Саме параметр управляє циклом. Цикли поділяються на: 1. Лічильні 2. Ітераційні 3. Складні
  • 4. Організація лічильного циклу з використанням операторів FOR – NEXT До лічильних циклів відносяться ті цикли, для яких відома кількість повторень виконання тіла циклу. Лічильні цикли організують за допомогою операторів FOR ……NEXT. Формат лічильного циклу: FOR параметр = XN TO XK [STEP DX] тіло циклу NEXT параметр де XN – початкове значення; XK – кінцеве значення; DX – значення кроку. dxxkxnпараметр ;;= Тіло цикла
  • 5. Організація лічильного циклу з використанням операторів FOR – NEXT Якщо ключове слово STEP відсутнє, то за замовченням значення кроку DX =1 Крок може бути від’ємним, тоді початкове значення повинно бути більше ніж кінцеве XN>XK. Підрахувати кількість кроків можна за формулою: де ] [ - ціла частина числа. 1+      − = DX XNXK n
  • 6. Організація лічильного циклу з використанням операторів FOR – NEXT Алгоритм роботи лічильного циклу FOR – NEXT: На першому кроці параметр= XN Після чого виконується тіло циклу. Оператор NEXT виконує наступні дії: • Обчислюється наступне значення параметру • параметр= параметр+DX • Нове значення параметра порівнюється з кінцевим значенням XK параметр<=XK Якщо нове значення параметру не більше кінцевого значення , то виконується тіло циклу при новому значенні параметра. Якщо нове значення параметру більше кінцевого значення параметр>XK , то виконується вихід з циклу і управління передається наступному за NEXT оператору.
  • 7. Організація лічильного циклу з використанням операторів FOR – NEXT Приклад 1: Обчислити значення функції Q. Аргумент x змінюється від xn до xk з кроком dx. Вивести значення аргументу та функції у вигляді таблиці. xn = –6.8, xk =6.2, dx =2 y=6 Результати табуляції функції вивести на Лист1 Excel 4 2 sin y xy y Q + + =
  • 8. Організація лічильного циклу з використанням операторів FOR – NEXT Схема алгоритму:
  • 9. Організація лічильного циклу з використанням операторів FOR – NEXT Результат:
  • 10. Організація лічильного циклу з використанням операторів FOR – NEXT Приклад 2: Обчислити значення функції Результати вивести на форму у вигляді двох стовпчиків. У першому розміщується значення аргументу x, а у другому – значення функції y. [ ] 6,03,2;5,3 1,9,4 10,sin 0, 2 2 =−∈        >− ≤≤ < = dxx xякщоx xякщоx xякщоx y
  • 11. Організація лічильного циклу з використанням операторів FOR – NEXT Схема алгоритму прикладу 2:
  • 12. Організація лічильного циклу з використанням операторів FOR – NEXT Програмний код:
  • 13. Організація лічильного циклу з використанням операторів FOR – NEXT Результат прикладу 2:
  • 14. Використання лічильних циклів при обчисленнях сум, добутків та факторіалів Приклад 3: Обчислити суму доданків ∑= + = 8 1 1 1 i i S 81 1 ..... 31 1 21 1 11 1 1 18 1 + ++ + + + + + = + = ∑=i i S
  • 15. Використання лічильних циклів при обчисленнях сум, добутків та факторіалів Програмний код:
  • 16. Використання лічильних циклів при обчисленнях сум, добутків та факторіалів Приклад : Обчислити добуток множників Схема алгоритму ∏= = 7 1 1 k k P Початок P Кінець k =1; 7 P=1 k PP 1 ⋅=
  • 17. Використання лічильних циклів при обчисленнях сум, добутків та факторіалів • Програма • Результат
  • 18. Використання лічильних циклів при обчисленнях сум, добутків та факторіалів Приклад . Обчислити значення L за формулою: де ∏∑ == ⋅− ⋅+ −⋅ ⋅= 5 1 312 3 4 2 25 23 j j i j k ii i mL 17,0,85,1 == km
  • 19. Програма: Private Sub CommandButton1_Click() Dim m, k, S, D, L As Single Dim i, j As Integer m = Val(TextBox1) k = Val(TextBox2) S = 0 For i = 1 To 12 S = S + (3 * i ^ 2 - 2) / (i ^ 4 + 5 * i) Next i TextBox3 = S D = 1 For j = 1 To 5 D = D * (j ^ 3 / 3 ^ j) Next j TextBox4 = D L = m * S - k * D TextBox5 = L End Sub Схема Початок m, k S=0 j=1; 5 S= D=1 i=3; 12 D= L= Кінець L ii i S ⋅+ −⋅ + 5 4 2 2 3 j j D 2 3 ⋅ DkSm ⋅−⋅
  • 21. Ітераційні цикли Ітераційними циклами називають такі цикли, в яких не відома кількість повторень тіла циклу, але відома умова виконання або припинення циклу. Ітераційні цикли організують за допомогою операторів DO ........... LOOP. Ітераційні цикли розрізняють: • з передумовою • післяумовою
  • 22. Ітераційні цикли з передумовою DO WHILE <умова виконання циклу> Тіло циклу LOOP DO UNTIL <умова припинення циклу> Тіло циклу LOOP • Схема Тіло циклу так умов а ні
  • 23. Ітераційні цикли з післяумовою DO Тіло циклу LOOP WHILE <умова виконання циклу > DO Тіло циклу LOOP UNTIL <умова припинення циклу > • Схема ні Тіло циклу так умов а
  • 24. Приклад : Обчислити суму Обчислення припинити, коли . Вивести обчислену суму та кількість доданків. ∑ ∞ = = 1 1 k k S 3 10, 1 − =≤ εε k
  • 25. Private Sub CommandButton1_Click() Dim k, n As Integer Dim s As Single eps = Val(TextBox1) k = 1 s = 0 Do While 1 / k > eps s = s + 1 / k k = k + 1 Loop n = k - 1 TextBox2 = s TextBox3 = n End Sub Private Sub Command2_Click() End End Sub • Схема так ні k=1 S=0 eps k > 1 k SS 1 += 1+= kk 1−= kn S,n Кінець Початок eps
  • 26. Private Sub Command1Button_Click() Dim k As Integer Dim s As Single eps = Val(TextBox1) k = 0 s = 0 Do k = k + 1 s = s + 1 / k Loop While 1 / k > eps TextBox2 = s TextBox3 = k End Sub Private Sub Command2_Click() End End Sub • Схема: так ні k=0 S=0 eps k > 1 k SS 1 += 1+= kk S, k Кінець Початок eps