SlideShare a Scribd company logo
1 of 12
Download to read offline
Урок № 6
Цикл while
ЗМІСТ
Цикл while.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 3
Безкінечний цикл .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 5
Оператор break.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 5
Оператор continue.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 7
Гра “Guess my number”.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 8
Цикл while
При створенні програм не завжди відомо, скільки
разів доведеться повторити заданий набір дій. Для цього
є особливий тип циклів – цикли з умовою.
Наприклад, уявімо, що персонаж комп'ютерної гри
наступив на лаву, і кожну секунду в нього віднімається
5 очок здоров'я. Так буде до тих пір, поки гравець не пе-
рейде на інше місце.
Розробник не знає, скільки ітерацій в такому випад-
ку необхідно пройти, тому для створення циклу вико-
ристовує while (рис. 1).
Рисунок 1
3
Цикл while
Цикл while є циклом з умовою. Він відрізняється
від for тим, що спочатку невідомо, скільки разів буде
виконуватися. Однак принцип роботи while дуже схо-
жий з for. Спочатку перевіряється умова, якщо вона
правдива – виконується код в тілі циклу, потім умова
перевіряється знову. Якщо в якийсь момент вона стає
неправдивою, програма виходить з циклу.
Загальний синтаксис while має такой вигляд:
while умовний_вираз:
інструкції
Давайте розглянемо приклад використання циклу в
програмному коді:
# example of the while loop
a = 5
while a<10:
print("Now the value of a: " + str(a)
+ ". But it is less than 10!")
a = a + 1 # Increasing the value of a by 1 in
each iteration
print("That’s it! Now the number a is greater than 10!")
Даний код постійно виводить значення, яке зберіга-
ється у змінній а, потім збільшує його на 1. Так буде до
тих пір, поки а не стане більше 10.
Умови для циклів можна використовувати будь-які:
як прості, так і складні.
4
Урок № 6
Безкінечний цикл
Іноді виникає необхідність виконувати певні дії по-
стійно, наприклад набивати м’яч. Без заданої умови та-
кий цикл називається нескінченним.
Розглянемо синтаксис безконечного циклу:
while True:
інструкції
Потрібно бути дуже акуратним при використанні
безкінечних циклів, і використовувати їх тільки в най-
необхідніших випадках! При неправильному застосу-
ванні цей цикл може просто «заморозити» виконання
вашої програми. До того ж в більшості випадків можна
обійтися без такого циклу, створивши відповідну умову.
Оператор break
Оператор break достроково перериває виконання
циклу, наприклад, якщо в коді використовується безкі-
нечний цикл (на прикладі того, що ми розглянули ра-
ніше). Це можна використовувати в тих випадках, коли
виконання програми потрібно перервати, як тільки ви-
конається будь-яка умова.
Припустимо, ви вирішили побити рекорд всесвіт-
ньо відомого футболіста Дієго Марадони і набити голо-
вою м’яч більше 7000 разів. Таким чином, ви починаєте
виконання циклу while, і в змінну a записується ваш
поточний рахунок.
5
Цикл while
Як тільки м’яч торкнеться підлоги, цикл завершить-
ся і в змінну більше не будуть додаватися значення (рис.
2).
Так виглядає виконання break в коді (рис. 3):
Рисунок 2
Рисунок 3
6
Урок № 6
Оператор continue
Оператор continue ігнорує код, який йде за ним і
продовжує виконання циклу з наступної ітерації, наче
після слова continue і зовсім немає жодного коду (рис.
4).
Візуально це виглядає, як на зображенні (див. рис. 5
на наступній сторінці) і, як ми бачимо, принцип робо-
ти continue значно відрізняється від принципу роботи
break.
Рисунок 4
7
Цикл while
Гра “Guess my number”
Ось ви і навчилися працювати з циклами, а тепер
настав час закріпити отримані знання!
Давайте створимо гру Guess my number. Суть гри
досить проста: користувач повинен вгадати число, яке
загадав комп’ютер (рис. 6).
Рисунок 5
Рисунок 6
8
Урок № 6
9
Цикл while
Лістинг 1
import random
print("-------Guess my number-------")
print("You need to guess the number picked by
enigmatic computer!"
"Number is in range from 1 to 10")
magic_number = random.randint(1, 20)
user_number = 0
while user_number != magic_number:
user_number = int(input("Your number: "))
if magic_number > user_number:
print("The magic number is greater than
yours!")
elif magic_number < user_number:
print("The magic number is less than
yours!")
print(f"You guessed it right!
Magic number: {magic_number}")
З’ясуємо, як працює наш код.
Ми підключили модуль random, щоб згенерувати
випадкове число. Як ви пам’ятаєте, бібліотеки потрібно
підключати на самому початку коду.
Також створили змінні magic_number (загаданий
комп’ютером номер) і user_number (номер, який ввів
користувач).
10
Урок № 6
Основу нашої гри становить цикл:
while user_number != magic_number:
Цей цикл необхідний для початку гри. Він буде по-
стійно питати у користувача загадане число, поки той
не вгадає:
while user_number != magic_number:
user_number = int(input("Your number: "))
print(f"You guessed You guessed it right!
Magic number: {magic_number}")
Ми створили спрощений варіант Guess my number.
Звичайно, можна залишити все як є, але давайте
вдосконалимо гру! Додамо інформацію про те, наскіль-
ки користувач близький до потрібного числа. Це можна
зробити, доповнивши цикл умовою if-elif.
11
Цикл while
Тепер ми можемо не тільки перевірити, чи вгадав
користувач число, а й дізнатися, більше воно чи менше
від задуманого:
while user_number != magic_number:
user_number = int(input("Your number: "))
if magic_number < user_number:
print("The magic number is greater than
yours!")
elif magic_number > user_number:
print("The magic number is less than yours!")
print(f"You guessed it right!
Magic number: {magic_number}")
Урок № 6
Цикл while
© Комп'ютерна Академiя ШАГ
www.itstep.org
Усі права на фото-, аудіо- і відеотвори, що охороняються авторським правом і фраг-
менти яких використані в матеріалі, належать їх законним власникам. Фрагменти
творів використовуються в ілюстративних цілях в обсязі, виправданому поставле-
ним завданням, у рамках учбового процесу і в учбових цілях, відповідно до ст. 1274
ч. 4 ГК РФ і ст. 21 і 23 Закони України «Про авторське право і суміжні права». Обсяг і
спосіб цитованих творів відповідає прийнятим нормам, не завдає збитку нормально-
му використанню об’єктів авторського права і не обмежує законні інтереси автора
і правовласників. Цитовані фрагменти творів на момент використання не можуть
бути замінені альтернативними аналогами, що не охороняються авторським правом,
і відповідають критеріям добросовісного використання і чесного використання.
Усі права захищені. Повне або часткове копіювання матеріалів заборонене.
Узгодження використання творів або їх фрагментів здійснюється з авторами і
правовласниками. Погоджене використання матеріалів можливе тільки якщо
вказано джерело.
Відповідальність за несанкціоноване копіювання і комерційне використання
матеріалів визначається чинним законодавством України.

More Related Content

Similar to Mka python jr-urok_06_ua_1563258907

Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
Vasiliy66
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
Vasiliy66
 
зош №15 жулькова с.а. урок з інформати ки 7клас
зош №15 жулькова    с.а.        урок з інформати ки 7класзош №15 жулькова    с.а.        урок з інформати ки 7клас
зош №15 жулькова с.а. урок з інформати ки 7клас
Александр Дрон
 
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
PavloTsiura
 
урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
Helen Pat
 

Similar to Mka python jr-urok_06_ua_1563258907 (20)

Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
 
Алгоритми з повтореннями та розгал
Алгоритми з повтореннями та розгалАлгоритми з повтореннями та розгал
Алгоритми з повтореннями та розгал
 
+6 for
+6 for+6 for
+6 for
 
4 клас урок 28 створення та виконання алгоритмів з повторенням у визначеному ...
4 клас урок 28 створення та виконання алгоритмів з повторенням у визначеному ...4 клас урок 28 створення та виконання алгоритмів з повторенням у визначеному ...
4 клас урок 28 створення та виконання алгоритмів з повторенням у визначеному ...
 
2 урок 5 клас.doc
2 урок 5 клас.doc2 урок 5 клас.doc
2 урок 5 клас.doc
 
зош №15 жулькова с.а. урок з інформати ки 7клас
зош №15 жулькова    с.а.        урок з інформати ки 7класзош №15 жулькова    с.а.        урок з інформати ки 7клас
зош №15 жулькова с.а. урок з інформати ки 7клас
 
урок 9
урок 9урок 9
урок 9
 
Lesson # 44. repetition algorithms for processing quantities. loop with condi...
Lesson # 44. repetition algorithms for processing quantities. loop with condi...Lesson # 44. repetition algorithms for processing quantities. loop with condi...
Lesson # 44. repetition algorithms for processing quantities. loop with condi...
 
7classdist2
7classdist27classdist2
7classdist2
 
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
 
урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
 
Lr7
Lr7Lr7
Lr7
 
5classdist2
5classdist25classdist2
5classdist2
 
Урок 42. Алгоритми з повтореннями для опрацювання величин. Цикл з лічильником
 Урок 42. Алгоритми з повтореннями  для опрацювання величин.  Цикл з лічильником Урок 42. Алгоритми з повтореннями  для опрацювання величин.  Цикл з лічильником
Урок 42. Алгоритми з повтореннями для опрацювання величин. Цикл з лічильником
 
While
WhileWhile
While
 
Lesson # 39. program debugging. bzd briefing
Lesson # 39. program debugging. bzd briefingLesson # 39. program debugging. bzd briefing
Lesson # 39. program debugging. bzd briefing
 
Less39
Less39Less39
Less39
 
Задачі AI-розробника як застосовується штучний інтелект.pptx
Задачі AI-розробника як застосовується штучний інтелект.pptxЗадачі AI-розробника як застосовується штучний інтелект.pptx
Задачі AI-розробника як застосовується штучний інтелект.pptx
 
Lr7
Lr7Lr7
Lr7
 

Recently uploaded

Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?
Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?
Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?
Collaborator.pro
 
Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...
Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...
Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...
ssuser7541ef1
 

Recently uploaded (13)

Графіки відключень у Вінниці і області на 2024 рік
Графіки відключень у Вінниці і області на 2024 рікГрафіки відключень у Вінниці і області на 2024 рік
Графіки відключень у Вінниці і області на 2024 рік
 
Презентація про виникнення балади., особливості
Презентація про виникнення балади., особливостіПрезентація про виникнення балади., особливості
Презентація про виникнення балади., особливості
 
Пасивний будинок Енергоефективність ОБСБД.pptx
Пасивний будинок Енергоефективність ОБСБД.pptxПасивний будинок Енергоефективність ОБСБД.pptx
Пасивний будинок Енергоефективність ОБСБД.pptx
 
Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?
Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?
Анастасія Крижановська. Як AI-революція вплинула на бізнес контент-агентства?
 
Ім’я чернігівця на карті Місяця. ЮРІЙ МЕЗЕНЦЕВ
Ім’я чернігівця на карті Місяця. ЮРІЙ МЕЗЕНЦЕВІм’я чернігівця на карті Місяця. ЮРІЙ МЕЗЕНЦЕВ
Ім’я чернігівця на карті Місяця. ЮРІЙ МЕЗЕНЦЕВ
 
Хвороби картоплі та заходи боротьби з ними
Хвороби картоплі та заходи боротьби з нимиХвороби картоплі та заходи боротьби з ними
Хвороби картоплі та заходи боротьби з ними
 
Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...
Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...
Тренінг про тренінг. Педагогам ЗДО проте як скласти та провести тренінг у кол...
 
Особливості застосування інструментарію оцінювання готовності дитини до навча...
Особливості застосування інструментарію оцінювання готовності дитини до навча...Особливості застосування інструментарію оцінювання готовності дитини до навча...
Особливості застосування інструментарію оцінювання готовності дитини до навча...
 
Заняття у різновіковій групі. Особливості планування та проведення з дітьми д...
Заняття у різновіковій групі. Особливості планування та проведення з дітьми д...Заняття у різновіковій групі. Особливості планування та проведення з дітьми д...
Заняття у різновіковій групі. Особливості планування та проведення з дітьми д...
 
Альфрейні опорядження поверхонь ТООРтаПД.pptx
Альфрейні опорядження поверхонь ТООРтаПД.pptxАльфрейні опорядження поверхонь ТООРтаПД.pptx
Альфрейні опорядження поверхонь ТООРтаПД.pptx
 
Графіки стабілізаційних відключень у Чернігові та області
Графіки стабілізаційних відключень у Чернігові та областіГрафіки стабілізаційних відключень у Чернігові та області
Графіки стабілізаційних відключень у Чернігові та області
 
70 років тому – початок Кенгірського повстання
70 років тому – початок Кенгірського повстання70 років тому – початок Кенгірського повстання
70 років тому – початок Кенгірського повстання
 
80 років від часу депортації з Криму кримських татар і осіб інших національно...
80 років від часу депортації з Криму кримських татар і осіб інших національно...80 років від часу депортації з Криму кримських татар і осіб інших національно...
80 років від часу депортації з Криму кримських татар і осіб інших національно...
 

Mka python jr-urok_06_ua_1563258907

  • 1.
  • 2. Урок № 6 Цикл while ЗМІСТ Цикл while. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Безкінечний цикл . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Оператор break. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Оператор continue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Гра “Guess my number”. . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
  • 3. Цикл while При створенні програм не завжди відомо, скільки разів доведеться повторити заданий набір дій. Для цього є особливий тип циклів – цикли з умовою. Наприклад, уявімо, що персонаж комп'ютерної гри наступив на лаву, і кожну секунду в нього віднімається 5 очок здоров'я. Так буде до тих пір, поки гравець не пе- рейде на інше місце. Розробник не знає, скільки ітерацій в такому випад- ку необхідно пройти, тому для створення циклу вико- ристовує while (рис. 1). Рисунок 1 3 Цикл while
  • 4. Цикл while є циклом з умовою. Він відрізняється від for тим, що спочатку невідомо, скільки разів буде виконуватися. Однак принцип роботи while дуже схо- жий з for. Спочатку перевіряється умова, якщо вона правдива – виконується код в тілі циклу, потім умова перевіряється знову. Якщо в якийсь момент вона стає неправдивою, програма виходить з циклу. Загальний синтаксис while має такой вигляд: while умовний_вираз: інструкції Давайте розглянемо приклад використання циклу в програмному коді: # example of the while loop a = 5 while a<10: print("Now the value of a: " + str(a) + ". But it is less than 10!") a = a + 1 # Increasing the value of a by 1 in each iteration print("That’s it! Now the number a is greater than 10!") Даний код постійно виводить значення, яке зберіга- ється у змінній а, потім збільшує його на 1. Так буде до тих пір, поки а не стане більше 10. Умови для циклів можна використовувати будь-які: як прості, так і складні. 4 Урок № 6
  • 5. Безкінечний цикл Іноді виникає необхідність виконувати певні дії по- стійно, наприклад набивати м’яч. Без заданої умови та- кий цикл називається нескінченним. Розглянемо синтаксис безконечного циклу: while True: інструкції Потрібно бути дуже акуратним при використанні безкінечних циклів, і використовувати їх тільки в най- необхідніших випадках! При неправильному застосу- ванні цей цикл може просто «заморозити» виконання вашої програми. До того ж в більшості випадків можна обійтися без такого циклу, створивши відповідну умову. Оператор break Оператор break достроково перериває виконання циклу, наприклад, якщо в коді використовується безкі- нечний цикл (на прикладі того, що ми розглянули ра- ніше). Це можна використовувати в тих випадках, коли виконання програми потрібно перервати, як тільки ви- конається будь-яка умова. Припустимо, ви вирішили побити рекорд всесвіт- ньо відомого футболіста Дієго Марадони і набити голо- вою м’яч більше 7000 разів. Таким чином, ви починаєте виконання циклу while, і в змінну a записується ваш поточний рахунок. 5 Цикл while
  • 6. Як тільки м’яч торкнеться підлоги, цикл завершить- ся і в змінну більше не будуть додаватися значення (рис. 2). Так виглядає виконання break в коді (рис. 3): Рисунок 2 Рисунок 3 6 Урок № 6
  • 7. Оператор continue Оператор continue ігнорує код, який йде за ним і продовжує виконання циклу з наступної ітерації, наче після слова continue і зовсім немає жодного коду (рис. 4). Візуально це виглядає, як на зображенні (див. рис. 5 на наступній сторінці) і, як ми бачимо, принцип робо- ти continue значно відрізняється від принципу роботи break. Рисунок 4 7 Цикл while
  • 8. Гра “Guess my number” Ось ви і навчилися працювати з циклами, а тепер настав час закріпити отримані знання! Давайте створимо гру Guess my number. Суть гри досить проста: користувач повинен вгадати число, яке загадав комп’ютер (рис. 6). Рисунок 5 Рисунок 6 8 Урок № 6
  • 9. 9 Цикл while Лістинг 1 import random print("-------Guess my number-------") print("You need to guess the number picked by enigmatic computer!" "Number is in range from 1 to 10") magic_number = random.randint(1, 20) user_number = 0 while user_number != magic_number: user_number = int(input("Your number: ")) if magic_number > user_number: print("The magic number is greater than yours!") elif magic_number < user_number: print("The magic number is less than yours!") print(f"You guessed it right! Magic number: {magic_number}") З’ясуємо, як працює наш код. Ми підключили модуль random, щоб згенерувати випадкове число. Як ви пам’ятаєте, бібліотеки потрібно підключати на самому початку коду. Також створили змінні magic_number (загаданий комп’ютером номер) і user_number (номер, який ввів користувач).
  • 10. 10 Урок № 6 Основу нашої гри становить цикл: while user_number != magic_number: Цей цикл необхідний для початку гри. Він буде по- стійно питати у користувача загадане число, поки той не вгадає: while user_number != magic_number: user_number = int(input("Your number: ")) print(f"You guessed You guessed it right! Magic number: {magic_number}") Ми створили спрощений варіант Guess my number. Звичайно, можна залишити все як є, але давайте вдосконалимо гру! Додамо інформацію про те, наскіль- ки користувач близький до потрібного числа. Це можна зробити, доповнивши цикл умовою if-elif.
  • 11. 11 Цикл while Тепер ми можемо не тільки перевірити, чи вгадав користувач число, а й дізнатися, більше воно чи менше від задуманого: while user_number != magic_number: user_number = int(input("Your number: ")) if magic_number < user_number: print("The magic number is greater than yours!") elif magic_number > user_number: print("The magic number is less than yours!") print(f"You guessed it right! Magic number: {magic_number}")
  • 12. Урок № 6 Цикл while © Комп'ютерна Академiя ШАГ www.itstep.org Усі права на фото-, аудіо- і відеотвори, що охороняються авторським правом і фраг- менти яких використані в матеріалі, належать їх законним власникам. Фрагменти творів використовуються в ілюстративних цілях в обсязі, виправданому поставле- ним завданням, у рамках учбового процесу і в учбових цілях, відповідно до ст. 1274 ч. 4 ГК РФ і ст. 21 і 23 Закони України «Про авторське право і суміжні права». Обсяг і спосіб цитованих творів відповідає прийнятим нормам, не завдає збитку нормально- му використанню об’єктів авторського права і не обмежує законні інтереси автора і правовласників. Цитовані фрагменти творів на момент використання не можуть бути замінені альтернативними аналогами, що не охороняються авторським правом, і відповідають критеріям добросовісного використання і чесного використання. Усі права захищені. Повне або часткове копіювання матеріалів заборонене. Узгодження використання творів або їх фрагментів здійснюється з авторами і правовласниками. Погоджене використання матеріалів можливе тільки якщо вказано джерело. Відповідальність за несанкціоноване копіювання і комерційне використання матеріалів визначається чинним законодавством України.