Завдання та порядок виконання. 2.1 Вивчити навчальний матеріал та підготувати відповіді на контрольні

2.1 Вивчити навчальний матеріал та підготувати відповіді на контрольні

питання.

2.2 Скласти схему алгоритму рішення задачі за варіантом завдання.

 

3 Контрольні питання

3.1 Визначити поняття “циклічний обчислювальний процес”.

3.2 Визначити поняття “цикл”.

3.3 Визначити поняття “параметр циклу”.

3.4 Який склад алгоритму циклічної структури.

3.5 Які різновиди циклічних алгоритмів?

3.6 Які дії необхідно виконати для організації арифметичного циклу?

3.7 Визначити поняття “рекурсія”.

3.8 Наведіть приклади задач, які описуються циклічними алгоритмами.

 

4 Зміст звіту

4.1 Номер роботи, її назва, визначення мети.

4.2 Короткі відповіді на контрольні питання.

4.3 Алгоритм розв’язання задачі та короткий його опис.

4.4 Висновки по роботі.


5 Навчальний матеріал

 

Розв’язання багатьох задач зводиться до виконання обчислень за тими самими математичними залежностями, але при різних значеннях величин, які у них входять. Такий обчислювальний процес має назву циклічного, а багаторазово повторювані ділянки цього процесу – циклів. Змінні, що змінюються при кожному новому виході на повторення, мають назву параметрів циклу. Змінна, значення якої обчислюється і зберігається в одній тій самій комірці пам'яті ЕОМ, зветься простою змінною. Змінна, що є елементом масиву, зветься змінною з індексом. При використанні простої перемінної параметром циклу є сама змінна. При використанні змінної із індексом параметром циклу є її індекс. В одному циклі можуть бути кілька параметрів.

Алгоритм циклічної структури в загальному вигляді повинен містити:

- підготовку циклу - завдання початкових значень змінним циклу перед першим його виконанням;

- тіло циклу - дії, повторювані в циклі для різних значень параметрів циклу;

- зміну значень параметрів циклу перед кожним новим його повторенням;

- керування циклом - перевірку умови продовження (закінчення) циклу і перехід на початок тіла циклу, якщо виконується умова продовження циклу (або вихід з циклу після його закінчення).

Для організації циклічної структури можуть використовуватися або блоковий символ "розв’язання" у сукупності із символами "процес" (варіант А), або спеціальний блоковий символ "модифікація" (варіант В). Два варіанти організації циклічної структури наведено на рис. 1.


 

 


В)

 

 
 


Розрізняють регулярні або арифметичні цикли (з відомим числом повторень), умовою закінчення яких є досягнення параметром циклу свого кінцевого значення, і цикли ітераційні (з невідомим числом повторень). У таких циклах умова повторення або закінчення циклу задається по деякому проміжному або остаточному результату, наприклад, поки не буде досягнута необхідна точність обчислень.

Регулярні цикли називають також циклами з лічильником. Число повторень тіла циклу в цьому випадку підраховується за допомогою введення спеціальної змінної – лічильника, для якої відомі початкове, кінцеве значення та крок її зміни. Управління циклом здійснюється на підставі порівняння поточного значення лічильника із заданим порогом. Число повторень тіла циклу визначається за формулою:

N = ](хк - хн)/h[ + 1,

де хк - кінцеве значення параметра циклу;

хн - початкове значення параметра циклу;

h - крок зміни параметра циклу.

Поточне значення параметра циклу обчислюється за формулою:

х = хн + (k - 1)h,

де k змінюється від 1 до N.

При реалізації циклічних обчислювальних процесів використовуються рекурсивні вираження, що описують будь-який член послідовності чисел.

Наприклад, формула х = х + 1, у якій реалізована рекурсія, означає, що до вмісту комірки пам'яті з іменем х додається 1 і результат записується в х. Така формула зветься рекурентною і зв'язує між собою значення змінної х, що обчислюються послідовно. Вхідними даними для кожного наступного кроку є результати попереднього.

Приклад 1.Скласти алгоритм обчислення виразу y = x - sin(x), де x змінюється від xн = 0 до xк = 5 із кроком h = 0,15.

Схема алгоритму задачі (рис. 2) являє собою простий циклічний обчислювальний процес із неявно заданим числом повторень. Поняття рекурсії використовується також при обчисленні суми або добутку кінцевої кількості чисел. При цьому необхідно виконати наступні дії:

- сформувати вхідні дані;

- визначити початковий стан комірки, в якій провадиться накопичення суми або добутку;

- організувати цикл накопичення суми чи добутку;

- вивести результат.

Приклад 2. Скласти алгоритм обчислення значення факторіалу Y = N! (добутку чисел натурального ряду від 1 до N: 2!= 1*2; 3!= 1*2*3; 4!=1*2*3*4; N!=1*2*3*...*N). Два варіанти схеми алгоритму обчислення факторіалу наведено на рис. 3.


 

 
 

 


В)

 

А)

 
 
Рисунок 2 Алгоритми простого циклічного процесу


 
 

 

 


 

В)

 

А)

 


6 Варіанти індивідуальних завдань

 

1. Задано N трійок чисел a, b, c. Вводячи їх по черзі і інтерпретуючи як довжини сторін трикутників, визначити, які трійки чисел і скільки таких трійок можуть бути використані для побудови трикутника.

2. Вводячи в циклі по 4 оцінки, отримані студентами в сесію, визначити число невстигаючих студентів і середній бал групи по усіх іспитах.

3. У комп'ютер вводяться по черзі координати N точок. Визначити, скільки із них попадає в кільце з внутрішнім діаметром R1 і зовнішнім R2 .

4. Вводячи в циклі по 5 оцінок кожного студента, підрахувати число студентів, що не мають оцінок 2 і 3. У групі учиться N студентів.

5. Обчислити і вивести на друк позитивні значення функції

y = sin (nx) - cos (n/x) при n = 1,2, ... ,50.

6. Резервуар має форму сфери з внутрішнім радіусом R. Визначити обсяг рідини в залежності від рівня води H від нижньої точки дна резервуара. Величина Н змінюється від 0 до 2 із кроком 0,1R. Обсяг кульового сегмента

V = πh2 (R - H/3).

7. Визначити з точністю до 0.1 точку перетину функції Y = X- arctgХ – n із віссю Х, змінюючи значення Х від 2 до 5 із кроком 0,1. Зміна знака функції є ознакою пересічення осі Х. При Х=2 функція негативна.

8. Дається значення N. Вивести на друк таблицю множення на N чисел від 1 до 10.

9. Скласти програму виводу усіх трьохзначних чисел (десяткових), сума цифр яких дорівнює даному цілому числу.

10. Скласти програму для обчислення визначеного інтеграла y = методом прямокутників, обравши число розбивок N = 12.


11. Обчислити значення функції:

ae Sin x +Cosx , при х < -5;

y = Cos2x+Sin2x, при -5 < х < 5;

ab lg(bx), при х > 5,

x змінюється в інтервалі [-10; 10] c кроком 1

12. У окружність радіуса R уписаний багатокутник із стороною аn. Сторона багатокутника з подвоєним числом сторін знаходиться по формулі

а2n = .

Визначити а128, якщо відомо R і а4.

13. Скласти програму друку графіка функції в = sin (x+ex) для аргументу х, який змінюється від 00 до 3600 із кроком 100.

14. Побудувати таблицю значень функції, заданої графіком:

y

a

y=x+a y=a-x

 

y=0 0 х

 

15. Обчислити Н = (5К)! для К = 1, 2, ... , n

16. Нехай м'яч падає вертикально униз із башти висотою Н і щораз відскакує на 33,3% попередньої висоти. Обчислити відстань, пройденої м'ячем до припинення.

17.Визначити кількість цифр у цілому числі n . Якщо після ділення k разів числа n на 10 у цілої частині числа буде нуль, то k - кількість цифр у числі n.

18. У комп'ютер вводяться по черзі координати N точок. Визначити, яка кількість з них попаде у коло, радіусом R з центром в точці з координатами (a, b).

19. Скласти алгоритм програми виводу на екран щосекунди протягом хвилини, починаючи із будь-якого часу.

20. Експеримент складається в рахуванні числа киданій двох костей до випадання двох шестірок. Провести статистичне дослідження середнього числа необхідних для отримання двох шестірок киданій, повторюючи експеримент N разів.

21. Знайдіть два найбільших значення серед N значень ( N > 2).

22. Вивести номера і координати N точок, що лежать у колі з радіусом R. Точка належить колу, якщо її відстань від центру менше або дорівнює R. Центр кола знаходиться на початку координат.

23. У комп'ютер вводяться по черзі координати пар точок A і B. Визначити значення кута α у градусах між променями, що з'єднують точки A(X1, Y1) і B(X2, Y2) із початком координат.

24. Резервуар має форму сфери з внутрішнім радіусом R. Визначити площу поверхні рідини в залежності від рівня води H від нижньої точки дна резервуара. Величина Н змінюється від 0 до 2 із кроком 0,1R.

25. Обчислити значення функції:

lg3 a2 + / e x при x < 3;

y = + 1/x при 3 < x < 7

a сos2 (аeх) + a sin2(aex ) при x > 7.

x змінюється в інтервалі [0; 10] c кроком 0,5

26. Побудувати таблицю значень функції, заданої графіком:

y

y=1

y=x+2 y=2-x

y=0 y=0

0 x


27. Фігура представляє в нижньої частини усічений конус висотою H і радіусом нижньої основи R, а у верхній частині – півкулю радіусом r. Обчислити радіус ρ і площу S поперечного перетину фігури для висоти h, що змінюється від 0 до H+r із кроком 0,1Н.

28. Для функції Н = xk/k визначити значення k для Н, менших заданого значення А, якщо k = 1, 2, 3, …, N

29. Скласти алгоритм програми друку графіка функції у = сos x для аргументу х, що змінюється від 00 до 1800 з кроком 50.

30. Дано N значень. Визначити середнє парних значень і середнє непарних значень.

31. Скласти алгоритм програми для обчислення визначеного інтеграла y = методом трапецій, обравши число розбивок N = 20.

32. Траєкторія снаряда, що вилітає зі знаряддя під кутом α з початковою швидкістю Vo, описується рівняннями

X = Vo Cos αt, Y = Vo Sin αt – gt2 /2,

де g = 9,8 м/с2 – прискорення вільного падіння; t – час. Вводячи N заданих пар Vo, α , визначити, скільки снарядів попаде у ціль висотою Р, розташованої у вертикальної площини ствола знаряддя на відстані R на висоті Н .

y

Р

Vo

a Н

R х

 


РОБОТА №10

ПРОЕКТУВАННЯ АЛГОРИТМІВ ІТЕРАЦІЙНИХ ЦИКЛІЧНИХ ОБЧИСЛЮВАЛЬНИХ ПРОЦЕСІВ

Мета роботи

Вивчення способів опису алгоритмів, методики проектування схем алгоритмів ітераційних циклічних обчислювальних процесів.