Урок 10. Цикл While

while в Python має важливу роль у створенні циклів, які виконуються, поки задана умова залишається істинною. Ось основні риси та особливості синтаксису циклу while:

  • Умова: Перш за все, перед while ставиться умова. Поки ця умова істинна (True), тіло циклу while виконується.
  • Тіло циклу: Це блок коду, який виконується доти, доки умова while залишається істинною. У тілі циклу можуть бути будь-які інструкції Python.
  • Ітерація: Після виконання тіла циклу Python повертається до початку while і перевіряє умову ще раз. Цей процес триває до тих пір, поки умова не стане хибною (False).
  • Ризик безкінечного циклу: Важливо бути обережним з умовою, щоб уникнути безкінечного циклу. Якщо умова завжди залишається істинною, цикл буде виконуватися нескінченно.

Приклад з відео:

#За допомогою циклу while ми можемо виконати набір операторів
#поки умова є істинною
iterationVar = 1
while iterationVar <= 5:
    print("iterationVar equals ", iterationVar)
    iterationVar+=1

print("Out of cycle: iterationVar equals ", iterationVar) 

Break у циклі While

У Python оператор break використовується для припинення виконання найближчого об’єкта циклу (зокрема і while), в якому він знаходиться. Ось основні аспекти використання оператора break:

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

Приклад з відео:

#За допомогою оператора break ми можемо зупинити
#цикл, навіть якщо умова while виконується
iterationVar = 1
while iterationVar <= 5:
    print("iterationVar equals ", iterationVar)
    if iterationVar == 3:
        break
    iterationVar+=1

Continue у циклі While

У Python оператор continue використовується для переходу до наступної ітерації циклу без виконання решти коду в тілі циклу для поточної ітерації. Ось основні аспекти використання оператора continue:

  • Ціль: continue дозволяє перейти до наступної ітерації циклу, ігноруючи будь-які наступні інструкції у тілі циклу для поточної ітерації.
  • Де використовується: continue зазвичай використовується, коли потрібно пропустити певні ітерації циклу через умови, які не потребують подальшого виконання коду циклу на поточній ітерації.

Приклад з відео:

#За допомогою оператора continue ми можемо 
#зупинити поточну ітерацію та перейти на наступну
iterationVar = 1
while iterationVar <= 5:
    if iterationVar == 3:
        iterationVar+=1
        continue
    print("iterationVar equals ", iterationVar)
    iterationVar+=1

Else у циклі While

В Python можна використовувати блок else з оператором while.

Приклад з відео:

#За допомогою оператора else ми можемо 
#запустити блок коду один раз, коли умова більше не виконується
iterationVar = 1
while iterationVar<=5:
    print("iterationVar equals ", iterationVar)
    iterationVar+=1
    
else:
    print("Out of the loop: iterationVar equals ", iterationVar)

Завдання

Приклад завдання з відео.

#---Гра «Вгадай число».
#---Створіть гру, яка дає гравцеві 3 спроби вгадати число
#---від 1 до 10
#---Якщо гравець вгадає правильно, він виграє
#---Інакше комп'ютер виграє

#---подумайте про псевдокод
#---створити числову змінну
#---створити змінну counterOfAttempts
#---створити змінну припущення
#---коротко поясніть правила гри
#---створити цикл while і використовувати counterOfAttempts як умову
#---отримати значення від гравця у змінній припущення
#---збільшити лічильник
#---перевірити правильність припущення.
#---якщо припущення неправильне, напишіть блок else
#---повідомити, що припущення невірне та скільки спроб залишилося

Варіант розв’язання:

#Гра «Вгадай число».
#Створіть гру, яка дає гравцеві 3 спроби вгадати число
#від 1 до 10
#Якщо гравець вгадає правильно, він виграє
#Інакше комп'ютер виграє
import random
#подумайте про псевдокод
#створити числову змінну
numberToGuess = random.randrange(1,11)
#create counterOfAttempts змінна
counterOfAttempts = 0
#створити змінну припущення
guessOfPlayer=0
#коротко поясніть правила гри
print("Try to guess a number from 1 to 10.")
print("You have ", 3-counterOfAttempts," attempts.")

#створити цикл while і використовувати counterOfAttempts як умову
while counterOfAttempts<3:
    #отримати значення від гравця у змінній припущення
    guessOfPlayer = int(input("Guess a number from 1 to 10. "))
    #збільшити лічильник
    counterOfAttempts+=1
    #перевірити правильність припущення.
    if guessOfPlayer==numberToGuess:
        print("You have won. Congratulations.")
        print("The number was {}.".format(numberToGuess))
        break
    #якщо припущення неправильне, напишіть блок else
    else:
        #повідомити, що здогадка невірна і скільки спроб залишилося
        print("Wrong. You have ",3-counterOfAttempts," left.")
        if counterOfAttempts==3:
            print("You are out of attempts.")
            print("You didn't guess correctly.")
            print("The number was {}.".format(numberToGuess))
Урок 10. Цикл While

В цьому відео поговоримо про:
00:34 Цикл While
06:31 Break
09:40 Continue
18:15 Else

Приклади на Github

Leave a Reply

Your email address will not be published. Required fields are marked *