Урок:

Цикл з передумовою.

02.02.2026
0 0
Вміст уроку:
1
2
3

Урок не містить жодного завдання. Додайте завдання.

Щоб додати завдання, оберіть категорію завдання на панелі запитань.

1

2

Інструкція циклу з передумовою While.

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

У мові Python можлива організація циклів двох видів:

  • цикл з передумовою – while;

  • цикл з параметром – for.

Кожен з способів організації циклу має свої особливості, для кожного способу є своє коло завдань, найбільш природно розв’язуваних саме з його допомогою.

Інструкція циклу з передумовою – while.

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

Одноразове виконання інструкцій циклу називаєтьсяітерацією.

В процесі виконання інструкцій циклу відбувається заміна значень змінних, що входять до вказаної умови у якості операндів. Завдяки чому при N-кратному виконанні циклу змінюється і значення логічного виразу (умови) з True на False. У цьому випадку, виконання циклу закінчується і управління передається на наступну інструкцію, яка стоїть після тіла циклу.

Якщо під час запису умови або операторів, які виконуються в тілі циклу, була допущена помилка, в такій ситуації, можливо зациклення – значення логічного виразу ніколи не прийме значення False і, як наслідок, група інструкцій в циклі буде виконуватися нескінченно.

Циклwhile служить для організації N-кратного виконання групи інструкцій (тіла циклу) до тих пір, поки залишається істинним умова виконання циклу.

Схема циклу з передумовою.

Схема інструкції цикду while

  • while логічний_вираз:

    • блокінструкцій1

    • блокінструкцій2

    • блокінструкцій3

    • блокінструкційN

  • [else:

    • блокінструкційN+1]

Зауважимо, що ключове слово else: з блоком інструкцій можна опустити при складанні інструкції циклу while, на це вказують квадратні дужки. Якщо, даний блок інструкцій є присутнім, він буде виконаний один раз після закінчення циклу.

Приклад: створити програму, яка буде виводити на екран, в рядок, числа від 1 до n:

  • n = int(input('введіть кількість цифр = '))

  • i = 0

  • while i < n:

    • i = i + 1

    • print(i, end = ' ')

Накопичувачі суми і добутку

В циклах, доволі часто треба виконувати дії з отримання суми або добутку. Для цих цілей використовуються накопичувачі. Прикладом такого накопичувача є лічильник (рахує кроки циклу), який збільшує своє значення на одиницю з кожною ітерацією циклу. Для використання таких накопичувачів необхідна змінна цілого або дійсного типу , яка приймає початкове значення 0 для накопичення суми і початкове значення 1 для накопичення добутку поза тілом циклу (до початку циклу).

Приклад: створити програму, яка буде обчислювати суму ряду 1+2+3+…+n та виводити її на екран:

  • n = int(input('введіть кількість членів ряду = '))

  • i = 0

  • sum = 0

  • while i < n:

    • i = i + 1

    • sum = sum + i

  • else:

    • print('Сума', n, 'членів ряду =', sum)

Використання в циклах випадкових чисел.

Інколи, трапляються завдання, в яких необхідно генерувати випадкові числа, для цього зручно застосовувати генератор псевдо-випадкових чисел. Реалізація такого генератора, у мові python, знаходиться в модулі random. Цей модуль містить досить багато різноманітних функцій, які генерують випадкові числа, ми, поки що, розглянемо тільки функцію randint.

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

Приклад: створити програму, яка буде виводити на екран, в рядок, десять випадкових чисел від 1 до n:

  • import random

  • n = int(input('введіть кількість цифр = '))

  • i = 0

  • while i < 10:

    • i = i + 1

    • print(random.randint(1, n), end = ' ')

Інструкції управління циклом.

Взагалі, звичайний цикл завершується, коли логічний вираз повертає значення False. Але, можна перервати виконання циклу через інструкцію break.

Інструкція break перериває виконання циклу while або for і передає управління програмою інструкції, що стоїть одразу за блоком циклу. Блок else не буде виконуватися, якщо цикл переривається інструкцією break або continue.

Приклад: створити програму, яка буде отримувати від користувача довільні числа і визначати їх суму. Введення чисел повинно припинятися, коли програма отримує від’ємне число або нуль.

  • sum = 0

  • while True:

    • a = int(input('Введіть число '))

    • if a == 0 or a < 0:

      • break

    • sum = sum + a

  • print('Сума чисел =',sum)

Інструкція continue перериває виконання тільки поточної ітерації і передає виконання на обчислення логічного виразу. При цьому інструкції, наступні за continue до кінця блоку, ігноруються.

Приклад: створити програму, яка буде отримувати від користувача довільні числа і визначати їх суму, від’ємні числа ігноруються. Введення чисел повинно припинятися, коли програма отримує число нуль.

  • sum = 0

  • while True:

    • a = int(input('Введіть число '))

    • if a == 0:

      • break

    • if a < 0:

      • continue

    • sum = sum + a

  • print('Сума чисел =',sum)

Вкладені цикли

Інструкція одного циклу while може перебувати всередині інструкції іншого циклу. Така структура називається структурою вкладених циклів. Робота такої структури відбувається наступним чином: на одну ітерацію зовнішнього циклу вкладений цикл робить всі можливі ітерації.

Схема інструкції цикду while

  • while логічнийвираз1:

    • блокінструкцій1

    • блокінструкційM

    • while логічнийвираз2:

      • блокінструкційN

      • блокінструкційX

    • [else:

      • блокінструкційX+1]

  • [else:

    • блокінструкційZ]

Приклад: створити програму, яка буде виводити на екран таблицю множення.

  • i = 1

  • while i < 10:

    • j = 1

    • while j < 10:

      • print(j*i, end ='\t')

      • j += 1

    • i += 1

    • print()


3

image-54-1024x554.png

Не забувай задавати початкові значення змінних перед оператором циклу!

18.PNG

Рефлексія від 8 учнів

Сподобався:

0

Так: 8

Ні: 0

Зрозумілий:

0

Так: 8

Ні: 0

Потрібні роз'яснення:

0

Ні: 8

Так: 0

Рекомендуємо

УРОК № 7.4. Цикли з передумовою. Змінні в циклах з передумовою

УРОК № 7.4. Цикли з передумовою. Змінні в циклах з передумовою

69

Аватар профіля Пархомчук Вадим Олександрович
Інформатика
6 клас

20 грн

8 клас. Цикли з передумовою

8 клас. Цикли з передумовою

109

Аватар профіля Vitenko Ihor
Інформатика
8 клас

50 грн

УРОК № 4.9 за темою «Цикл з передумовою»

 УРОК № 4.9 за темою «Цикл з передумовою»

72

Аватар профіля Пархомчук Вадим Олександрович
Інформатика
8 клас

20 грн

Опис алгоритмів із циклом із передумовою мовою програмування

Опис алгоритмів із циклом із передумовою мовою програмування

392

Аватар профіля Лизько Валентина Степанівна
Інформатика
7 клас

25 грн

6 клас. Урок 39. Алгоритми і програми з циклами з передумовою

6 клас. Урок 39. Алгоритми і програми з циклами з передумовою

477

Аватар профіля Вітенко Іван
Інформатика
6 клас

48 грн

6 клас. Урок 40. Алгоритми і програми з циклами з передумовою

6 клас. Урок 40. Алгоритми і програми з циклами з передумовою

367

Аватар профіля Вітенко Іван
Інформатика
6 клас

48 грн

Схожі уроки

Впорядкування, пошук і фільтрування даних.

Впорядкування, пошук і фільтрування даних.

1278

Аватар профіля Вожга Ірина Леонідівна
Інформатика
9 клас

Створення й уведення структури таблиць. Поняття таблиці, поля, запису. Створення таблиць, означення полів і ключів у середовищі СКБД. Властивості полів, типи даних.

Створення й уведення структури таблиць. Поняття таблиці, поля, запису. Створення таблиць, означення полів і ключів у середовищі СКБД. Властивості полів, типи даних.

1097

Аватар профіля Савка-Ржематорська Оксана Василівна
Інформатика
9 клас

Цикли з передумовою у вкладених циклах

Цикли з передумовою у вкладених циклах

1340

Аватар профіля Вожга Ірина Леонідівна
Інформатика
6 клас

Налаштування часових параметрів аудіо- та відеоряду.

Налаштування часових параметрів аудіо- та відеоряду.

491

Аватар профіля Солодовнікова Катерина Олексіївна
Інформатика
8 клас

Елемент керування «кнопка». Поняття об’єкту та його властивостей і методів (на прикладі елементів екранної форми). Властивості і методи елементів керування.

Елемент керування «кнопка». Поняття об’єкту та його властивостей і методів (на прикладі елементів екранної форми). Властивості і методи елементів керування.

648

Аватар профіля Пилипенко Олена Володимирівна
Інформатика
8 клас

Елемент керування кнопка

Елемент керування кнопка

276

Аватар профіля Пилипенко Олена Володимирівна
Інформатика
8 клас