Циклы
Циклы - это механизм циклического выполнения кода. В этой части мы разберем все возможные способы создания циклов
Цикл for
Начать стоит с такого вида данных как Range
. Range
- это последовательность создающаяся с помощью обозначения начала и конца. Приведем сразу пример:
В данном примере мы указываем начало последовательности (1) и ее конец (10), при этом сразу получаем генерацию остальные чисел. Важно понимать, что в таких конструкциях как и в любых других мы можем указывать переменные тоже, так как при работе с переменными мы работаем с ними как с обычными данными
А теперь посмотрим как можно применить Range
на практике
Кроме того у нас есть специальные ключевые слова, с помощью которых мы можем либо выходить из цикла полностью, либо пропускать текущий этап
Цикл while
Ранее мы научились создавать циклы с заранее известным первым элементом и последним. А что если нам неизвестна эта информация ? Что если мы хотим, чтобы наш цикл работал до определенного условия ?
Здесь нам на помощь приходит цикл while. Давайте перепишем наш пример выше
Казалось бы, что данный пример гораздо проще выглядит с использованием цикла for, но все становится более понятно, когда наше условие усложняется
Вопрос для самостоятельной работы: на каких значениях x и y цикл перестанет выполняться и начнет работу код после него ?
цикл loop
А теперь представим, что нам нужен бесконечный цикл, который будет выполняться до тех пор, пока мы самостоятельно не захотим из него выйти
Для этого давайте напишем простейшую игру по угадыванию магического числа
Задание for_as_while
Напишите код, используя цикл for, который будет последовательно распечатывать в консоли номера билетов от 200 000 до 210 000 и от 220 000 до 235 000.
Распечатайте такие же номера билетов, используя цикл while.
Задание swimming_pool
Создайте переменную volume, в которой будет храниться объём бассейна, и установите её равной 1200.
Создайте переменные filling_speed, равная 30 и devastation_speed, равная 10. Первая переменная - скорость наполнения, вторая - опустошения.
Напишите программу с использованием цикла while, которая рассчитает и выведет в консоль время наполнения бассейна с учётом скоростей наполнения и опустошения.
Рекомендации по выполнению:
Создайте переменную, в которой будет храниться текущий объём бассейна, и каждую итерацию цикла добавляйте к нему filling_speed и вычитайте из него devastation_speed. Как только текущий объём бассейна станет равен значению переменной volume, выполните команду break. В процессе выполнения цикла считайте количество итераций — это и будет время наполнения бассейна.
Задание boxes
Вы доставляете гуманитарную помощь в ящиках одинакового размера. У вас есть грузовики и контейнеры. В каждый грузовик помещается максимум 12 контейнеров. В каждый контейнер — не более 27 ящиков. Ящики, контейнеры и грузовики пронумерованы.
Принцип работы программы:
Указываем число ящиков — получаем результат в виде строк в консоль:
Рекомендации:
Для добавления отступа в строке вы можете использовать символ табуляции «\t».
Обратите внимание на арифметическую операцию «Остаток от деления»
Дополнительный материал
Last updated