Python Lab
Цикл whileУрок 5 из 5

for vs while — когда что использовать

15 мин20 XP

for vs while — правило выбора

Используйте for когда:

  • Знаете количество итераций заранее
  • Перебираете список, строку, range
python
# Перебор коллекции — for: for fruit in ["яблоко", "банан"]: print(fruit) # Счётный цикл — for: for i in range(10): print(i)

Используйте while когда:

  • Количество итераций зависит от условия
  • Нужен ввод от пользователя до правильного ответа
  • Ищете что-то с неизвестной позицией
python
# Условный цикл — while: balance = 1000 while balance > 0: balance -= 300 print(balance) # Алгоритм с неизвестным количеством шагов: n = 12 while n % 2 == 0: n //= 2 print(n) # нечётная часть

Преобразование for → while

python
# for: for i in range(5): print(i) # Эквивалент на while: i = 0 while i < 5: print(i) i += 1

📌 Запомни

  • for — известное количество итераций или перебор коллекции
  • while — условие, зависящее от вычислений
  • Любой for можно записать как while, но не наоборот

Квест

НОД алгоритмом Евклида

15 мин35 XP

Найдите НОД (наибольший общий делитель) a = 48 и b = 18 с помощью алгоритма Евклида:

Пока b != 0: a, b = b, a % b

Ожидаемый вывод: 6

Результаты появятся здесь после выполнения кода.