Цикл з лічильником
Нова українська школа
Урок 36
Інформатика 8
teach-inf.com.ua
за підручником
Ривкінд Й.Я. та ін.
Готуємось до вивчення нового матеріалу
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Цикли з лічильником
У цьому пункті йтиметься про:
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Пригадайте
Які процеси називають циклічними? Наведіть приклади.
Що таке цикл в алгоритмі?
Який вигляд має команда циклу з лічильником у мові програмування, яку ви вивчали раніше? Як вона виконується?
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Ви вже знаєте, що в багатьох алгоритмах одна або кілька команд повинні повторюватися багато разів поспіль. Недоцільно включати в алгоритм ці команди стільки разів, скільки вони повинні повторюватися, тому що кількість разів повторення може бути дуже велика, або навіть заздалегідь невідома.
У таких випадках потрібно в алгоритмах використовувати цикли. Нагадаємо, що цикл у алгоритмі – це фрагмент алгоритму, який може повторюватися поспіль більше ніж один раз.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
У мовах програмування є кілька команд, які можуть реалізувати цикл. Одна з них – команда циклу з лічильником.
Її доцільно використовувати в тих випадках:
коли кількість повторень команд тіла циклу відома ще до початку виконання циклу.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Наприклад, якщо відомо, скільки років гроші будуть зберігатися на рахунку в банку.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Загальний вигляд команди циклу з лічильником у мові Python такий:
for <ім’я змінної> in range (<кількість повторень>):
<команди тіла циклу>
Рядок заголовка команди циклу з лічильником
Змінна –
лічильник циклу
Функція, що утворює (генерує) набір послідовних цілих чисел, перше з яких 0, а останнє – на 1 менше від заданої кількості повторень (усього чисел стільки, як задано кількість повторень).
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Наприклад, функція:
for i in range(3):
генерує набір з 3 чисел:
0, 1, 2
Змінна – лічильник циклу послідовно набуває значень із цього набору чисел.
Тіло циклу виконується, поки лічильник отримує нові значення. Коли нового значення в наборі немає, виконання циклу припиняється.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Блок-схему виконання команди циклу з лічильником в Python.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Виконується команда циклу з лічильником так:
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Продовження…
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
У записі команди циклу з лічильником усі команди тіла циклу повинні бути записані з однаковим відступом праворуч від першої літери слова for.
for i in range(3):
print(i)
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Розглянемо як приклад проєкт для розв’язування задачі, у якому використовується цикл з лічильником.
Задача. Створити проєкт для обчислення кількості кульок у пірамідці.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Створимо математичну модель для цієї задачі, враховуючи, що:
1 кулька
в першому зверху шарі пірамідки
2 ряди по 2 кульки
у другому
3 ряди по 3 кульки і так далі
у третьому
Врахуємо також, що кількість шарів у пірамідці може бути довільним натуральним числом.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Математична модель:
кількість шарів у пірамідці (n)
вхідні дані:
кількість кульок у пірамідці (s)
кінцеві результати:
s = 12 + 22 + 32 + 42 + … + n2
формули:
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Проєкт для розв’язування цієї задачі та вікно його виконання.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Виконаємо цей проєкт для n = 4.
Команда | Результати виконання | ||||
Крок 1 | Крок 2 | Крок 3 | Крок 4 | Крок 5 | |
n = int(ent1.get()) | n = 4 | | | | |
s = 0 | s = 0 | | | | |
range(4) | 0, 1, 2, 3 | | | | |
У наборі ще є невикористані числа? | True | True | True | True | False |
Змінна i набуває першого значення з набору невикористаних чисел | i = 0 | i = 1 | i = 2 | i = 3 | |
s = s + (i + 1) * (i + 1) | s = 0 + (0 + + 1)2 = 1 | s = 1 + (1 + + 1)2 = 5 | s = 5 + (2 + + 1)2 = 14 | s = 14 + (3 + + 1)2 = 30 | |
ent2.insert(0, str(s)) | | | | | 30 |
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Звертаємо вашу увагу: після завершення циклу змінна – лічильник циклу і матиме значення 3.
Це останнє значення з набору чисел, згенерованого функцією range(4).
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Окрім функції range(<кількість повторень>), у команді циклу з лічильником можна використовувати функцію, яка має 3 аргументи цілого типу:
range(<початок діапазону>, <кінець діапазону>, <крок>)
перше ціле число, яке потрапить до згенерованого набору
початок діапазону
ціле число, яке не увійде до згенерованого набору та яке більше за всі числа з набору, якщо крок > 0, і менше всіх чисел з набору, якщо крок < 0
кінець діапазону
різниця між кожними двома сусідніми цілими числами у згенерованому наборі чисел
крок
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Команда циклу з лічильником
Наприклад, функція:
range(3, 8, 2)
згенерує такий набір чисел:
Наступне число 7 + 2 = 9 не увійде в набір чисел, оскільки більше за другий аргумент функції.
3
3 + 2 = 5
5 + 2 = 7
Кожен з аргументів функції range може бути як додатним, так і від’ємним цілим числом. Початок діапазону та кінець діапазону можуть також набувати значення 0.
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Пригадайте
Для чого тестують
проєкти?
У чому полягає процес тестування проєкту?
Як потрібно тестувати проєкт з розгалуженнями?
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Тестування проєкту,�що містить цикл з лічильником
1 раз
2 рази
3 рази
5 разів
іншу кількість разів
Під час тестування проєкту, що містить цикл з лічильником, доцільно добирати такі набори вхідних даних, щоб тіло циклу виконувалося:
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Дайте відповіді на запитання
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Розгадайте ребус
Лічильник
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Домашнє завдання
Проаналізувати
§ 4.8, с. 150-156
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Працюємо за комп’ютером
Сторінка
154
cutt.ly/Ie2cGz5m
Розділ 4
§ 4.8
© Вивчаємо інформатику teach-inf.com.ua
Успіхів�у навчанні!
Нова українська школа
Урок 36
Інформатика 8
teach-inf.com.ua
за підручником
Ривкінд Й.Я. та ін.