Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекція 11.doc
Скачиваний:
6
Добавлен:
17.04.2019
Размер:
235.01 Кб
Скачать

2. Розв’язування задач на використання різних типів циклів (обчислення сум, добутків, середніх значень наборів чисел, найбільшого та найменшого значення функції).

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

Задача 7. Визначити суму чисел натурального ряду доти, доки остаточне значення суми не перевищить 1000.

Вивести значення отриманої суми і кількість ітерацій (повто­рень циклу).

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

Алгоритм розв’язування задачі

1. Задати початкове значення накопичувача суми S (0).

2. Задати початкове значення числа натурального ря­ду n (1).

3. Провести накопичення суми (S + п).

4. Провести перевірку значення накопиченої суми.

5. Якщо отримане значення суми менше або дорівнює 1000, збільшити значення числа натурального ряду (п + 1) і цикл по­вторити з блоку № 3.

6. Якщо отримане значення суми більше за 1000, цикл припи­нити.

7. Вивести значення суми S.

8. Вивести кількість повторень (n).

Нижче показана блок-схема алгоритму розв'язання задачі.

Цикл з накопиченням

Задача 8. Серед заданих десяти значень х = {2, 8, 0, -6, -4, 22, 5, -9, 13, —12} обчислити суму додатних чисел.

Даний цикл організовується як цикл по лічильнику. За накопичувач суми вибирається змінна S. Перед першим виконанням циклу початкове значення S вибирається рівним ну­лю (це проводиться з тієї причини, що при додаванні нуля до будь-якого значення результат не зміниться).

Алгоритм розв’язування задачі

1. Задати початкове значення накопичувача суми S (0).

2. Задати початкове значення лічильника п (1).

3. Ввести поточне значення х.

4. Провести перевірку, чи введене значення х є додатнім.

5. Якщо результатом перевірки умови є ИСТИНА, то провести накопичення суми (S + х), і значення лічильника збільшити на одиницю (п + 1).

6. Якщо результат перевірки умови — ЛОЖЬ, то накопичення суми не приводити а значення лічильника збільшити на одиницю (п + 1).

7. Провести перевірку стану лічильника циклу. Якщо зна­чення лічильника перевищує кількість заданих значень х (10), цикл припинити і вивести значення суми.

8. Якщо значення лічильника дорівнює або менше за кількість заданих х (10), цикл повторити з блоку № 4.

Нижче подана блок-схема алгоритму розв'язання задачі.

У наведеному прикладі використовується цикл з післяумовою (перевірка умови виконання циклу — в кінці).

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

Обчислення в циклі з декількома параметрами, що змінюються одночасно.

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

Задача 9.Обчислити значення функції , де x змінюється від 1 з кроком 0,25, а y змінюється від 1 до 10 з кроком 1 .

Алгоритм розв’язування задачі

1. х=1,

2. для y=1;10;1

3. обчислити z за формулою

4. вивести z

5. збільшити значення x=x+0,25

6. перейти до п.2

7. кінець

***САМОСТІЙНО зобразити алгоритм розв’язування Задачі №9 у вигляді блок-схеми.

Знаходження найбільшого та найменшого значення.

Знаходження найбільшого чи найменшого значення функції здійснюється за умовною математичною формулою:

Аналогічно, для найменшого значення:

Задача 10. Знайти найменше значення функції

якщо х змінюється від 0 до С з кроком h.

Алгоритм розв’язування задачі

  1. ввести a, b, c,

  2. присвоїти ymin=1019

  3. для х від 0 до С крок зміни h

  4. обчислити y за формулою

  5. перевірити y < ymin, якщо так, то ymin= y,

  6. інакше перейти на п.3.

  7. після виходу з циклу вивести ymin

  8. кінець.

***САМОСТІЙНО зобразити алгоритм розв’язування Задачі № 10 у вигляді блок-схеми.

Використати алгоритмічну конструкцію повторення з блоком модифікація: