whileЦикл while выполняет блок кода, пока условие остаётся истинным. В отличие от for, который перебирает известную последовательность, while используется, когда количество повторений заранее неизвестно.
В этом уроке мы познакомимся с циклом while, научимся использовать его для решения задач с неизвестным количеством итераций.
for и while.while для повторения действий до выполнения условия.while.whileЦикл while выполняет блок кода, пока условие истинно.
while условие:
# блок кода, который выполняется, пока условие истинноwhilecount = 0
while count < 5:
print(count)
count += 1
# Вывод:
# 0
# 1
# 2
# 3
# 4for и whileforfor удобен, когда известно количество повторений или есть последовательность для перебора.
# for — когда знаем количество
for i in range(5):
print(i)whilewhile удобен, когда количество повторений зависит от условия, которое проверяется во время выполнения.
# while — когда количество неизвестно
number = 0
while number < 5:
print(number)
number += 1whilecount = 0
total = 0
while total < 100:
total += 10
count += 1
print(f"Потребовалось {count} итераций")
# Вывод: Потребовалось 10 итерацийnumber = -1
while number < 0 or number > 100:
number = int(input("Введите число от 0 до 100: "))
print(f"Вы ввели: {number}")total = 0
n = 1
while total < 50:
total += n
n += 1
print(f"Сумма: {total}, последнее число: {n - 1}")
# Вывод: Сумма: 55, последнее число: 10Если условие в while всегда истинно, цикл будет выполняться бесконечно.
# Плохо: бесконечный цикл
count = 0
while count < 5:
print(count)
# забыли увеличить count — цикл никогда не закончится!
# Хорошо: счётчик увеличивается
count = 0
while count < 5:
print(count)
count += 1 # обязательно изменяем переменную из условияЧто выведет данный код?
count = 0
while count < 3:
print(count)
count += 1Что выведет данный код?
n = 5
while n > 0:
print(n)
n -= 1Напиши программу, которая выводит числа от 1 до 10 с помощью while.
n = 1
while n <= 10:
print(n)
n += 1Найди сумму всех чисел от 1 до 100 с помощью while.
total = 0
n = 1
while n <= 100:
total += n
n += 1
print(total)Дано число n. Выведи все его делители.
n = 12
divisor = 1
while divisor <= n:
if n % divisor == 0:
print(divisor)
divisor += 1На этом уроке мы познакомились с циклом while, который выполняет код, пока условие остаётся истинным. Мы научились использовать while для задач с неизвестным количеством повторений.
while и for: используют while, когда достаточно for с range() — программа завершится ошибкой или даст неверный результат.Напиши программу, которая:
n.n до 1 включительно (в обратном порядке).Напиши программу, которая:
n.n.Напиши программу, которая:
n.Напиши программу, которая:
n.Напиши программу-игру:
secret = 42.Напиши программу, которая находит НОД (наибольший общий делитель) двух чисел по алгоритму Евклида: пока оба числа не равны нулю, большее заменяй на остаток от деления на меньшее. Выведи НОД.
Считай число n. Выведи все числа Фибоначчи, не превосходящие n: 1, 1, 2, 3, 5, 8, ...