Page 234 - 4505
P. 234
7. A := (n-1)/(n*n)
8. n := n + 1
9. Перехіддоп. 5
10. ВиведенняS
11. Кінець
У розглянутих вище прикладах кількість повторень заздалегідь невідома. У першому воно
залежить від кількості цифр в записі натурального числа, в другому — від числа e.
У тих же випадках, коли кількість кроків відома з умови завдання, простіше і вигідніше
використовувати цикл з параметром.
Приклад 3. Знайти добуток перших к натуральних чисел, кратних трьом.
При складанні алгоритму врахуємо, що перше натуральне число, кратне 3, є трійка, а всі
подальші більші попереднього на 3.
1. Введенняk
2. P := 1 {тутнакопичуємдобуток}
3. T := 0 {тутбудутьчисла, кратні3}
4. I := 1
5. ЯкщоI >k, перейтидо п. 10
6. T := T + 3
7. P := P * T
8. I := I + 1
9. Перейти до п. 5
10. Виведення P
11. Кінець
Інші приклади будуть записані вже на МПВР. У даній же публікації зроблена спроба
продемонструвати, що вивчення програмування розумно починати власне з розробки
алгоритмів, не акцентуючи спочатку уваги на записі алгоритму на тій або іншій мові
програмування. В той же час автор, будучи прихильником структурного підходу до
програмування, пропонує дотримуватися цього підходу і при програмуванні на рівні блок-схем.
Вкладені цикли
Можливі випадки, коли усередині тіла циклу необхідно повторювати деяку послідовність
операторів, тобто організувати внутрішній цикл. Така структура отримала назву циклу в циклі
або вкладених циклів. Глибина вкладення циклів (тобто кількість вкладених один в одного
циклів) може бути різною.
При використанні такої структури для економії машинного часу необхідно виносити з
внутрішнього циклу в зовнішній всі операторів, які не залежать від параметра внутрішнього
циклу.
Приклад вкладених циклів «для»
Обчислити суму елементів заданої матриці А(5,3).
S:= 0;
МатрицяА пцдляi от1 до5
пцдляj от1 до3
S:=S+A[i,j]
кц
кц
Приклад вкладених циклів «поки»
Обчислити добуток тих елементів заданої матриці A(10,10), які розташовані на перетині
парних рядків і парних стовпців.
i:=2; P:=1
пцпокаi <= 10
j:=2
пцпокаj <= 10
230