Циклы while могут иметь условия, которые всегда выполняются. Такие программы приведут к бесконечному циклу и будут выполняться бесконечно. Хорошим примером такого типа программы является while True:
while True:
print('Welcome to an infinite loop!')
Эта программа будет выполняться бесконечно и будет выводить Welcome to an infinite loop! до тех пор, пока пользователь не остановит её.
Циклы while можно использовать для чтения данных до тех пор, пока не будет выполнено определённое условие. Например, мы можем считывать данные из ввода, пока ввод не равен 0. Как только пользователь введёт 0 и нажмёт Enter, цикл while должен завершиться. Это можно реализовать так:
num = -1
while num != 0:
num = int(input())
print(f'The user entered: {num}')
print('End!')
Эта программа будет читать ввод до тех пор, пока пользователь не введёт 0. Как только пользователь введёт 0, программа выйдет из цикла и выведет End!.
Мы также можем сначала считать num, а затем начать цикл:
num = int(input())
while num != 0:
print(f'The user entered: {num}')
num = int(input())
print('End!')
Таким образом, программа не будет выводить последний 0, так как выйдет из цикла до этого.
Вы можете попробовать это самостоятельно, чтобы поэкспериментировать с этими двумя способами.
Задача
Напишите программу, которая считывает ввод до тех пор, пока не встретит слово End, и выводит введённый текст на экран. Как только программа встречает слово End, она должна остановиться. Программа не должна выводить последнее End из ввода.