Цикл for зручно використовувати, якщо відома кількість повторень. Але часто цикл необхідно повторювати, поки виконується деяка умова. Цикл while (цикл із умовою) буде повторюватися до тих пір, поки це потрібно.
Як працює цикл while?
Цикл while («поки») буде повторюватися, поки виконується задана умова. Ця умова називається умовою циклу і повертає True або False.
Фрагмент блок-схеми циклу з умовою наведено на рис. 1.
 
86.JPG
 
Синтаксис команди:
whіle <умова>:
         <тіло циклу>
Тут <умова> — логічний вираз, що є умовою виконання циклу;
<тіло циклу> — команди, що виконуються під час кожної ітерації.
 
Виконання команди циклу while починається з обчислення значення логічного виразу — умови циклу. Результатом перевірки умови може бути True або False.

Якщо умова істинна, то виконуються команди тіла циклу й керування повертається на перевірку умови. Якщо ж умова хибна, то виконується команда, яка є наступною після команди while.
Зверни увагу!
Блок команд тіла циклу має бути записаний з відступом від лівого краю!
Приклад:
Проаналізуймо виконання циклу:
 
вайл2.PNG
 
При початковому значенні х=7 цикл виконається 3 рази. Коли х набуває значення 10, умова стає хибною і цикл припиняє роботу.
 
вайл1.PNG
 
При початковому значенні х=11 цикл не виконається жодного разу.
Приклад:
Задача. Вивести в консоль цілі числа з діапазону [0; 10).
 
 За допомогою циклу for for i in range(10): 
          print(і)
За допомогою циклу while i=0
while i<10:
      print(і)
      i = i+1
 
Якщо під час першої перевірки умова виявиться хибною, тіло циклу не виконається жодного разу.
Приклад:
Знайти суму чисел, кратних 4 і менших 100.
a = 0
s = 0
while a < 100:
       a = a+4
       s = s + a
print ('s =', s)
Нескінченний цикл
Наведений фрагмент програми ілюструє нескінченний цикл:
num = 0
while num < 20:
               print (num)

У тілі циклу значення num не змінюється, тому умова num<20 залишається істинною, тобто цикл є нескінченним.

Якщо як умову циклу while задати True, умова ніколи не стане хибною й цикл не завершиться.
Зверни увагу!
Не забувай задавати початкові значення змінних перед оператором циклу!
Приклад:
Будемо будувати відрізки за допомогою циклу while.У циклі продовжується побудова відрізків і поворот Черепашки на 170°, поки Черепашка не повернеться в точку (0,0) (abs(pos()) < 1).
 
вайл4.PNG
 
Напишемо програму, в якій людина вводить із клавіатури математичний вираз і отримує відповідь. Для обчислення значення виразу використовують функцію eval(), яка опрацьовує рядок символів так, як і Python IDLE.

Цикл while працює, поки людина не введе q.
 
87.JPG 
Джерела:
Інформатика : підруч. для 6 кл. закл. загал. серед. освіти / [О. О. Бондаренко, В. В. Ластовецький, О. П. Пилипчук, Є. А. Шестопалов]. — Харків : Вид-во «Ранок», 2023.