SlideShare a Scribd company logo
1 of 16
Download to read offline
Урок № 3
Черепашкова
графіка в Python.
Цикл for
ЗМІСТ
Змінні.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 3
Цикли в програмуванні.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 5
Цикл for .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 5
Функція range.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 9
Малюємо різні фігури. .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 12
Змінні
У мові Python – динамічна типізація, а це значить,
що тип даних визначається вже під час виконання
програми і прописувати її для кожної змінної не по-
трібно.
Давайте розглянемо такий приклад і доповнимо
його:
a = 8
b = 0.8
c = "string"
d = True
print(type(a), type(b), type(c), type(d))
Тут ми створили чотири різні змінні і визначили їхні
типи. Для визначення типу в мові Python є спеціальна
функція – type(). В результаті виконання коду отрима-
ли такий рядок:
<class 'int'> <class 'float'> <class 'str'>
<class 'bool'>
Це чотири основні типи даних, з якими ви вже зна-
йомі. Відповідно, int (integer) використовується для
позначення цілих чисел (-765, 0, 20), float – для чисел з
плаваючою комою (-15.0, 0.1, 225.5), str (string) – ря-
док ("Tom", "Hello World"), а bool використовується для
позначення логічного типу даних, тобто такого, який
3
Черепашкова графіка в Python. Цикл for
може відповісти на питання однозначно – так/ні (True/
False) (рис. 1).
В	тому чи іншому вигляді змінні знадобляться нам
практично в кожній програмі, особливо це стосується
циклів і умов.
Рисунок 1
4
Урок № 3
Цикли в програмуванні
Люди постійно повторюють якісь дії, і програмі-
сти – не виняток. Вони не вельми люблять робити зайву
роботу, тому для повторення дій використовують ци-
кли.
Цикл – це повторення певного набору команд. На-
приклад, коли людина відтискається від підлоги 10 ра-
зів, вона 10 разів виконує одну і ту ж дію.
Цикли бувати декількох видів:
■■ з відомою кількістю повторень (з параметром);
■■ з невідомою кількістю повторень (з умовою).
Якщо повернутися до прикладу з відтисканнями, то
фраза «відтиснися 40 разів» означає, що буде виконано
дію «відтиснутися» в циклі, який повинен повторитися
40 разів. Якщо сказати: «Відтиснися, поки не змучиш-
ся», – це буде цикл з умовою, коли ми з самого початку
не знаємо, скільки разів він буде повторюватися.
Цикл for
Цикл for – це цикл з параметром (з заданою кіль-
кістю повторень). Даний цикл слід використовувати в
таких випадках:
■■ повторення якихось дій задану кількість разів;
■■ имання числа, яке буде змінюватися з кожним пов-
тором.
5
Черепашкова графіка в Python. Цикл for
Синтаксис циклу for виглядає наступним чином:
for i in генератор_последовательності:
інструкції
Давайте на прикладі завдання з черепахою уявімо,
що нам потрібно намалювати не одну фігуру, а три (див.
рис. 2 на сторінці 8):
import turtle
window = turtle.Screen()
turtle.reset()
turtle.shape("turtle")
turtle.bgcolor("dark slate gray")
turtle.color("alice blue")
turtle.speed(2)
turtle.pensize(3)
turtle.left(20)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
6
Урок № 3
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.left(20)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.left(20)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
window.exitonclick()
7
Черепашкова графіка в Python. Цикл for
Як бачите, нам доводиться писати великий код. А
що, якщо потрібно близько сотні таких квадратів?
Чи не найкраще рішення – кожен раз прописувати
все спочатку, правда ж? Більш того, такий метод взагалі
не підходить для програмістів. Тому на допомогу прихо-
дить цикл for.
Подивіться, наскільки компактніший і зрозумілі-
ший такий код:
import turtle
window = turtle.Screen()
turtle.reset()
turtle.shape("turtle")
turtle.bgcolor("dark slate gray")
turtle.color("alice blue")
turtle.speed(4)
turtle.pensize(3)
Рисунок 2
8
Урок № 3
9
Черепашкова графіка в Python. Цикл for
for i in 1,2,3,4,5,6:
turtle.left(30)
turtle.forward(40)
turtle.left(90)
turtle.forward(40)
turtle.left(90)
turtle.forward(40)
turtle.left(90)
turtle.forward(40)
turtle.left(90)
window.exitonclick()
У нашому коді ми використовували:
for i in 1,2,3,4,5,6 
Цей цикл повторить малювання квадрата 6 разів.
Однак, якщо потрібно повторити дію, наприклад,
100 або 200 разів, то такий вид запису буде незручний.
Тільки уявіть, скільки часу ви на це затратите! Тому кра-
ще використовувати функцію range.
Функція range
Цикл for працює за наступним принципом: він
перебирає всі значення по черзі і виконує код після
двокрапки.
Функція range повертає ряд чисел за заданим об-
меженням. Число в дужках визначає кількість повто-
рень, наприклад наша черепашка буде малювати десять
10
Урок № 3
фігур – range(10). Значення в дужках означає, що цикл
повториться 10 разів. Функція range може приймати не
один параметр, а кілька, наприклад range(0,  10) або
range(10, 20). У другому випадку параметр буде при-
ймати значення від 10 до 19 і повториться 10 разів, як і у
всіх розглянутих прикладах.
Примітка: можна також задавати число кроку.
Так, range(0, 12, 2) дасть такий результат:
0,2,4,6,8,10, причому, крок може бути від’єм-
ним – range(10, 0, -1):
for i in range(10, 0, -1):
print(i)
Напишемо код, в якому використовуємо цикл for і
функцію range(). Навчимо черепашку малювати кра-
сиву фігуру за допомогою звичайних квадратів (рис. 3):
import turtle
window = turtle.Screen()
turtle.reset()
turtle.shape("turtle")
turtle.bgcolor("dark slate gray")
turtle.color("alice blue")
turtle.speed(4)
turtle.pensize(3)
Рисунок 3
11
Черепашкова графіка в Python. Цикл for
for i in range(12):
turtle.left(30)
turtle.forward(40)
turtle.left(90)
turtle.forward(40)
turtle.left(90)
turtle.forward(40)
turtle.left(90)
turtle.forward(40)
turtle.left(90)
window.exitonclick()
12
Урок № 3
Малюємо різні фігури
Дуже добре, якщо ви зрозуміли матеріал і можете
самостійно внести зміни в код.
А	тепер давайте скористаємося циклом і створимо
за допомогою черепашки фігуру, що складається з кіл
(див. рис. 4 на сторінці 14):
import turtle
window = turtle.Screen()
turtle.reset()
turtle.shape("turtle")
turtle.bgcolor("black")
turtle.pencolor("purple")
turtle.speed(10)
turtle.pensize(2)
for i in range(30):
turtle.circle(5 * i)
turtle.circle(-5 * i)
turtle.left(i)
turtle.exitonclick()
13
Черепашкова графіка в Python. Цикл for
Або ж спіралевидну фігуру (див. рис. 5 на сторінці
14):
import turtle
window = turtle.Screen()
turtle.reset()
turtle.shape("turtle")
turtle.bgcolor("black")
turtle.pencolor("yellow")
turtle.speed(10)
turtle.pensize(2)
for i in range(360):
turtle.pensize(i/100 + 1)
turtle.forward(i)
turtle.left(59)
turtle.exitonclick()
Рисунок 4
Рисунок 5
14
Урок № 3
15
Черепашкова графіка в Python. Цикл for
Отримані на заняттях знання допоможуть вам са-
мостійно створювати різні фігури і задавати усі можли-
ві параметри.
© Комп'ютерна Академiя ШАГ
www.itstep.org
Усі права на фото-, аудіо- і відеотвори, що охороняються авторським правом і фраг-
менти яких використані в матеріалі, належать їх законним власникам. Фрагменти
творів використовуються в ілюстративних цілях в обсязі, виправданому поставле-
ним завданням, у рамках учбового процесу і в учбових цілях, відповідно до ст. 1274
ч. 4 ГК РФ і ст. 21 і 23 Закони України «Про авторське право і суміжні права». Обсяг і
спосіб цитованих творів відповідає прийнятим нормам, не завдає збитку нормально-
му використанню об’єктів авторського права і не обмежує законні інтереси автора
і правовласників. Цитовані фрагменти творів на момент використання не можуть
бути замінені альтернативними аналогами, що не охороняються авторським правом,
і відповідають критеріям добросовісного використання і чесного використання.
Усі права захищені. Повне або часткове копіювання матеріалів заборонене.
Узгодження використання творів або їх фрагментів здійснюється з авторами і
правовласниками. Погоджене використання матеріалів можливе тільки якщо
вказано джерело.
Відповідальність за несанкціоноване копіювання і комерційне використання
матеріалів визначається чинним законодавством України.
Урок № 3
Черепашкова графіка в Python.
Цикл for

More Related Content

What's hot

з досвіду роботи вчителя інформатики
з досвіду роботи вчителя інформатикиз досвіду роботи вчителя інформатики
з досвіду роботи вчителя інформатикиnelya3001
 
використання ікт на уроках математики
використання ікт на уроках математикивикористання ікт на уроках математики
використання ікт на уроках математикиAndrey1977
 
Презентація на тему :"Первісна та невизначений інтеграл"
Презентація на тему :"Первісна та невизначений інтеграл"Презентація на тему :"Первісна та невизначений інтеграл"
Презентація на тему :"Первісна та невизначений інтеграл"Антонина Антонина
 
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...Оксана Миколаївна Хоровець
 
1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...
1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...
1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...Оксана Миколаївна Хоровець
 
Опис досвіду роботи
Опис досвіду роботи Опис досвіду роботи
Опис досвіду роботи Vladimir Smirnov
 
Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...
Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...
Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...VsimPPT
 
Зберігання інформації. Носії інформації.
Зберігання інформації. Носії інформації.Зберігання інформації. Носії інформації.
Зберігання інформації. Носії інформації.V_Kobzar
 
виступ на педраді
виступ на педрадівиступ на педраді
виступ на педрадіannajni
 
Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"
Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"
Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"kurchenkogalina
 
Пошук максимального елемента в масиві
Пошук максимального елемента в масивіПошук максимального елемента в масиві
Пошук максимального елемента в масивіЗоя Муляр
 
4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...
4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...
4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...Дмитро Загура
 
Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...
Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...
Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...professor140
 
Шкільне методичне об'єднання вчителів історії та правознавства Каланчаць...
Шкільне методичне об'єднання  вчителів історії та  правознавства    Каланчаць...Шкільне методичне об'єднання  вчителів історії та  правознавства    Каланчаць...
Шкільне методичне об'єднання вчителів історії та правознавства Каланчаць...Артем Левицкий
 
координатна площина (6 клас)
координатна площина (6 клас)координатна площина (6 клас)
координатна площина (6 клас)Olexandr Lazarets
 
Макарони та макаронні вироби
Макарони та макаронні виробиМакарони та макаронні вироби
Макарони та макаронні виробиallafendyk
 

What's hot (20)

з досвіду роботи вчителя інформатики
з досвіду роботи вчителя інформатикиз досвіду роботи вчителя інформатики
з досвіду роботи вчителя інформатики
 
використання ікт на уроках математики
використання ікт на уроках математикивикористання ікт на уроках математики
використання ікт на уроках математики
 
Презентація на тему :"Первісна та невизначений інтеграл"
Презентація на тему :"Первісна та невизначений інтеграл"Презентація на тему :"Первісна та невизначений інтеграл"
Презентація на тему :"Первісна та невизначений інтеграл"
 
9 клас урок 14
9 клас урок 149 клас урок 14
9 клас урок 14
 
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
 
1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...
1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...
1.2 Двійкове кодування. Одиниці вимірювання довжини двійкового коду. Кодуванн...
 
Опис досвіду роботи
Опис досвіду роботи Опис досвіду роботи
Опис досвіду роботи
 
6 клас урок 17
6 клас урок 176 клас урок 17
6 клас урок 17
 
Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...
Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...
Урок 14 для 6 класу - Об'єкти презентації та засоби керування її демонстраціє...
 
Зберігання інформації. Носії інформації.
Зберігання інформації. Носії інформації.Зберігання інформації. Носії інформації.
Зберігання інформації. Носії інформації.
 
6 клас урок 6
6 клас урок 66 клас урок 6
6 клас урок 6
 
8 клас урок 4
8 клас урок 48 клас урок 4
8 клас урок 4
 
виступ на педраді
виступ на педрадівиступ на педраді
виступ на педраді
 
Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"
Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"
Презентація до уроків №7, №8 "Побудова графіків тригонометричних функцій"
 
Пошук максимального елемента в масиві
Пошук максимального елемента в масивіПошук максимального елемента в масиві
Пошук максимального елемента в масиві
 
4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...
4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...
4 клас. Корнієнко. Урок 1. Правила поведінки і безпеки життєдіяльності в комп...
 
Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...
Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...
Урок 60 "Мультимедійні дані та робота з ними. Програмне забезпечення для обро...
 
Шкільне методичне об'єднання вчителів історії та правознавства Каланчаць...
Шкільне методичне об'єднання  вчителів історії та  правознавства    Каланчаць...Шкільне методичне об'єднання  вчителів історії та  правознавства    Каланчаць...
Шкільне методичне об'єднання вчителів історії та правознавства Каланчаць...
 
координатна площина (6 клас)
координатна площина (6 клас)координатна площина (6 клас)
координатна площина (6 клас)
 
Макарони та макаронні вироби
Макарони та макаронні виробиМакарони та макаронні вироби
Макарони та макаронні вироби
 

Similar to Mka python jr-urok_03_ua_1563258828 (20)

7klas urok15
7klas urok157klas urok15
7klas urok15
 
Mka python jr-urok_05_ua_1563258882
Mka python jr-urok_05_ua_1563258882Mka python jr-urok_05_ua_1563258882
Mka python jr-urok_05_ua_1563258882
 
Mka python jr-urok_04_ua_1563258855
Mka python jr-urok_04_ua_1563258855Mka python jr-urok_04_ua_1563258855
Mka python jr-urok_04_ua_1563258855
 
Mka python jr-urok_06_ua_1563258907
Mka python jr-urok_06_ua_1563258907Mka python jr-urok_06_ua_1563258907
Mka python jr-urok_06_ua_1563258907
 
Mka python jr-urok_07_ua_1563258932
Mka python jr-urok_07_ua_1563258932Mka python jr-urok_07_ua_1563258932
Mka python jr-urok_07_ua_1563258932
 
урок 9
урок 9урок 9
урок 9
 
Less37
Less37Less37
Less37
 
Модулі Python
Модулі PythonМодулі Python
Модулі Python
 
7 klas 11_urok_m
7 klas 11_urok_m7 klas 11_urok_m
7 klas 11_urok_m
 
Учень, як вчений
Учень, як вченийУчень, як вчений
Учень, як вчений
 
Python
PythonPython
Python
 
7
77
7
 
05 Arrays
05 Arrays05 Arrays
05 Arrays
 
Less36
Less36Less36
Less36
 
war5classdist2.pptx
war5classdist2.pptxwar5classdist2.pptx
war5classdist2.pptx
 
7 klas 12_urok_m
7 klas 12_urok_m7 klas 12_urok_m
7 klas 12_urok_m
 
урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
 
7klas urok14(pr 4)
7klas urok14(pr 4)7klas urok14(pr 4)
7klas urok14(pr 4)
 
Алгоритми з повтореннями та розгал
Алгоритми з повтореннями та розгалАлгоритми з повтореннями та розгал
Алгоритми з повтореннями та розгал
 
Mka python jr-urok_01_ua_1563258764
Mka python jr-urok_01_ua_1563258764Mka python jr-urok_01_ua_1563258764
Mka python jr-urok_01_ua_1563258764
 

Recently uploaded

Автомат.звука с.інтегровані ігри для дітейpptx
Автомат.звука с.інтегровані ігри для дітейpptxАвтомат.звука с.інтегровані ігри для дітейpptx
Автомат.звука с.інтегровані ігри для дітейpptxvitalina6709
 
Відкрита лекція на тему «Біологічний захист рослин у теплицях»
Відкрита лекція на тему «Біологічний захист рослин у теплицях»Відкрита лекція на тему «Біологічний захист рослин у теплицях»
Відкрита лекція на тему «Біологічний захист рослин у теплицях»tetiana1958
 
upd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdf
upd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdfupd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdf
upd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdfssuser54595a
 
О.Духнович - пророк народної правди. Біографія
О.Духнович - пророк народної правди. БіографіяО.Духнович - пророк народної правди. Біографія
О.Духнович - пророк народної правди. БіографіяAdriana Himinets
 

Recently uploaded (6)

Автомат.звука с.інтегровані ігри для дітейpptx
Автомат.звука с.інтегровані ігри для дітейpptxАвтомат.звука с.інтегровані ігри для дітейpptx
Автомат.звука с.інтегровані ігри для дітейpptx
 
Її величність - українська книга презентація-огляд 2024.pptx
Її величність - українська книга презентація-огляд 2024.pptxЇї величність - українська книга презентація-огляд 2024.pptx
Її величність - українська книга презентація-огляд 2024.pptx
 
Відкрита лекція на тему «Біологічний захист рослин у теплицях»
Відкрита лекція на тему «Біологічний захист рослин у теплицях»Відкрита лекція на тему «Біологічний захист рослин у теплицях»
Відкрита лекція на тему «Біологічний захист рослин у теплицях»
 
upd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdf
upd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdfupd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdf
upd.18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23_FINAL.pdf
 
Віртуальна виставка «Аграрна наука України у виданнях: історичний аспект»
Віртуальна виставка «Аграрна наука України у виданнях: історичний аспект»Віртуальна виставка «Аграрна наука України у виданнях: історичний аспект»
Віртуальна виставка «Аграрна наука України у виданнях: історичний аспект»
 
О.Духнович - пророк народної правди. Біографія
О.Духнович - пророк народної правди. БіографіяО.Духнович - пророк народної правди. Біографія
О.Духнович - пророк народної правди. Біографія
 

Mka python jr-urok_03_ua_1563258828

  • 1.
  • 2. Урок № 3 Черепашкова графіка в Python. Цикл for ЗМІСТ Змінні. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Цикли в програмуванні. . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Цикл for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Функція range. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Малюємо різні фігури. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
  • 3. Змінні У мові Python – динамічна типізація, а це значить, що тип даних визначається вже під час виконання програми і прописувати її для кожної змінної не по- трібно. Давайте розглянемо такий приклад і доповнимо його: a = 8 b = 0.8 c = "string" d = True print(type(a), type(b), type(c), type(d)) Тут ми створили чотири різні змінні і визначили їхні типи. Для визначення типу в мові Python є спеціальна функція – type(). В результаті виконання коду отрима- ли такий рядок: <class 'int'> <class 'float'> <class 'str'> <class 'bool'> Це чотири основні типи даних, з якими ви вже зна- йомі. Відповідно, int (integer) використовується для позначення цілих чисел (-765, 0, 20), float – для чисел з плаваючою комою (-15.0, 0.1, 225.5), str (string) – ря- док ("Tom", "Hello World"), а bool використовується для позначення логічного типу даних, тобто такого, який 3 Черепашкова графіка в Python. Цикл for
  • 4. може відповісти на питання однозначно – так/ні (True/ False) (рис. 1). В тому чи іншому вигляді змінні знадобляться нам практично в кожній програмі, особливо це стосується циклів і умов. Рисунок 1 4 Урок № 3
  • 5. Цикли в програмуванні Люди постійно повторюють якісь дії, і програмі- сти – не виняток. Вони не вельми люблять робити зайву роботу, тому для повторення дій використовують ци- кли. Цикл – це повторення певного набору команд. На- приклад, коли людина відтискається від підлоги 10 ра- зів, вона 10 разів виконує одну і ту ж дію. Цикли бувати декількох видів: ■■ з відомою кількістю повторень (з параметром); ■■ з невідомою кількістю повторень (з умовою). Якщо повернутися до прикладу з відтисканнями, то фраза «відтиснися 40 разів» означає, що буде виконано дію «відтиснутися» в циклі, який повинен повторитися 40 разів. Якщо сказати: «Відтиснися, поки не змучиш- ся», – це буде цикл з умовою, коли ми з самого початку не знаємо, скільки разів він буде повторюватися. Цикл for Цикл for – це цикл з параметром (з заданою кіль- кістю повторень). Даний цикл слід використовувати в таких випадках: ■■ повторення якихось дій задану кількість разів; ■■ имання числа, яке буде змінюватися з кожним пов- тором. 5 Черепашкова графіка в Python. Цикл for
  • 6. Синтаксис циклу for виглядає наступним чином: for i in генератор_последовательності: інструкції Давайте на прикладі завдання з черепахою уявімо, що нам потрібно намалювати не одну фігуру, а три (див. рис. 2 на сторінці 8): import turtle window = turtle.Screen() turtle.reset() turtle.shape("turtle") turtle.bgcolor("dark slate gray") turtle.color("alice blue") turtle.speed(2) turtle.pensize(3) turtle.left(20) turtle.forward(50) turtle.left(90) turtle.forward(50) turtle.left(90) turtle.forward(50) 6 Урок № 3
  • 8. Як бачите, нам доводиться писати великий код. А що, якщо потрібно близько сотні таких квадратів? Чи не найкраще рішення – кожен раз прописувати все спочатку, правда ж? Більш того, такий метод взагалі не підходить для програмістів. Тому на допомогу прихо- дить цикл for. Подивіться, наскільки компактніший і зрозумілі- ший такий код: import turtle window = turtle.Screen() turtle.reset() turtle.shape("turtle") turtle.bgcolor("dark slate gray") turtle.color("alice blue") turtle.speed(4) turtle.pensize(3) Рисунок 2 8 Урок № 3
  • 9. 9 Черепашкова графіка в Python. Цикл for for i in 1,2,3,4,5,6: turtle.left(30) turtle.forward(40) turtle.left(90) turtle.forward(40) turtle.left(90) turtle.forward(40) turtle.left(90) turtle.forward(40) turtle.left(90) window.exitonclick() У нашому коді ми використовували: for i in 1,2,3,4,5,6  Цей цикл повторить малювання квадрата 6 разів. Однак, якщо потрібно повторити дію, наприклад, 100 або 200 разів, то такий вид запису буде незручний. Тільки уявіть, скільки часу ви на це затратите! Тому кра- ще використовувати функцію range. Функція range Цикл for працює за наступним принципом: він перебирає всі значення по черзі і виконує код після двокрапки. Функція range повертає ряд чисел за заданим об- меженням. Число в дужках визначає кількість повто- рень, наприклад наша черепашка буде малювати десять
  • 10. 10 Урок № 3 фігур – range(10). Значення в дужках означає, що цикл повториться 10 разів. Функція range може приймати не один параметр, а кілька, наприклад range(0,  10) або range(10, 20). У другому випадку параметр буде при- ймати значення від 10 до 19 і повториться 10 разів, як і у всіх розглянутих прикладах. Примітка: можна також задавати число кроку. Так, range(0, 12, 2) дасть такий результат: 0,2,4,6,8,10, причому, крок може бути від’єм- ним – range(10, 0, -1): for i in range(10, 0, -1): print(i) Напишемо код, в якому використовуємо цикл for і функцію range(). Навчимо черепашку малювати кра- сиву фігуру за допомогою звичайних квадратів (рис. 3): import turtle window = turtle.Screen() turtle.reset() turtle.shape("turtle") turtle.bgcolor("dark slate gray") turtle.color("alice blue") turtle.speed(4) turtle.pensize(3)
  • 11. Рисунок 3 11 Черепашкова графіка в Python. Цикл for for i in range(12): turtle.left(30) turtle.forward(40) turtle.left(90) turtle.forward(40) turtle.left(90) turtle.forward(40) turtle.left(90) turtle.forward(40) turtle.left(90) window.exitonclick()
  • 12. 12 Урок № 3 Малюємо різні фігури Дуже добре, якщо ви зрозуміли матеріал і можете самостійно внести зміни в код. А тепер давайте скористаємося циклом і створимо за допомогою черепашки фігуру, що складається з кіл (див. рис. 4 на сторінці 14): import turtle window = turtle.Screen() turtle.reset() turtle.shape("turtle") turtle.bgcolor("black") turtle.pencolor("purple") turtle.speed(10) turtle.pensize(2) for i in range(30): turtle.circle(5 * i) turtle.circle(-5 * i) turtle.left(i) turtle.exitonclick()
  • 13. 13 Черепашкова графіка в Python. Цикл for Або ж спіралевидну фігуру (див. рис. 5 на сторінці 14): import turtle window = turtle.Screen() turtle.reset() turtle.shape("turtle") turtle.bgcolor("black") turtle.pencolor("yellow") turtle.speed(10) turtle.pensize(2) for i in range(360): turtle.pensize(i/100 + 1) turtle.forward(i) turtle.left(59) turtle.exitonclick()
  • 15. 15 Черепашкова графіка в Python. Цикл for Отримані на заняттях знання допоможуть вам са- мостійно створювати різні фігури і задавати усі можли- ві параметри.
  • 16. © Комп'ютерна Академiя ШАГ www.itstep.org Усі права на фото-, аудіо- і відеотвори, що охороняються авторським правом і фраг- менти яких використані в матеріалі, належать їх законним власникам. Фрагменти творів використовуються в ілюстративних цілях в обсязі, виправданому поставле- ним завданням, у рамках учбового процесу і в учбових цілях, відповідно до ст. 1274 ч. 4 ГК РФ і ст. 21 і 23 Закони України «Про авторське право і суміжні права». Обсяг і спосіб цитованих творів відповідає прийнятим нормам, не завдає збитку нормально- му використанню об’єктів авторського права і не обмежує законні інтереси автора і правовласників. Цитовані фрагменти творів на момент використання не можуть бути замінені альтернативними аналогами, що не охороняються авторським правом, і відповідають критеріям добросовісного використання і чесного використання. Усі права захищені. Повне або часткове копіювання матеріалів заборонене. Узгодження використання творів або їх фрагментів здійснюється з авторами і правовласниками. Погоджене використання матеріалів можливе тільки якщо вказано джерело. Відповідальність за несанкціоноване копіювання і комерційне використання матеріалів визначається чинним законодавством України. Урок № 3 Черепашкова графіка в Python. Цикл for