Программирование Python по моим конспектам Лекция 9.2

Пост можно топить, минусить и всячески убивать, ибо в горячем он нахер не нужен, а вот подписчикам пригодится.



Для тех кто не в теме, тут я перевожу свои лекции по питону с языка немецкого на язык человеческий, поэтому- если что- я не виноват. Эти лекции созданы не для того, чтобы сделать из человека говнокодера, а для того, чтобы помочь в сложных темах, которые некому объяснить, а книга по программированию не может с этим помочь. Если вы никогда не были в такой ситуации- значит вы вундеркинд и я хочу от вас детей.

Отвечая на 90% одинаковых вопросов-

Я знаю, что это есть в каждой книге по питону. Это логично. Не логично было бы, если бы это было в книге по анатомии хомяков.

Я это делаю, потому что мне это нравится.



Список предыдущих лекций



http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...


http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...



Привет, товарищи, не знаю чем вас так удивил прошлый пост, ибо, по моему мнению, он был один из самых унылых, однако набежало аж +120 подписчиков. Это наталкивает меня на мысль, что все посты должны быть такими же унылыми как прошлый.

Да несцы, меченый, я пошутил.

Блеаць..говорила мама, что с шутками у меня так себе..


ладно. Это все присказка, а сказка впереди.

Сегодня мы поговорим о циклах. @Dantev специально как ты просил)

Первый наш клиент называется на разных языках по разному..одни называют его "ПОКА", другие "solange", третьи  говорят "في حين" ну а пиндосы не заморачивались и назвали его словом WHILE.

Очень хорошее слово. В жизни- ну ваще не заменимое. К примеру-


-не быкуй ПОКА не подкачался

или там..

-пей ПОКА она не стала красивой



Слово ПОКА решает наши  жизни, товарищи!! Оно, блеать, руководит парадом!

Давайте теперь подробнее рассорим первый пример.


-Я накачан?

-Нет

-Качаюсь

-Я накачан?

-Нет

-Качаюсь

-я накачан

-Да

-"ей йоопта, пацанчиг, иди сюдаа"


Второй пример


Красивая баба?

Страшная

Бухаю

Красивая баба?

Страшная

Бухаю

Красивая баба?

БАгиня!!

"выходи за меня!"


Что обедняет это все, кроме того, что это сраный бред? Правильно! Мы повторяем одно и тоже действие ПОКА не будет достигнуто условие. Это, поцоны, и есть цикл. Иногда цикл - есть зло. Например если мы плохие программисты или тупицы.

ВОт яркий пример


гладь кошку пока она зверь


Это называется бесконечным циклом. Вы будете гладить кошку до тех пор пока она не сдохнет к ебеням! И вот таких бесконечных циклов нужно избегать (иногда). Порой  они нужны.


Итак..это все прелюдия была.


Итак в питоне, как и в нашей, серой жизни, в циклах есть условие и инструкция.

Выглядит так


while условие:

инструкция  #не забываем о четырех пробелах


А теперь я покажу как все это работает на практике. Начнем с плохого примера. С той самой кошки.

Программирование Python по моим конспектам Лекция 9.2 Питон, Программирование, Лекция, Длиннопост

Условие будет выполняться бесконечно. И вот на мониторе мы уведем такое чудо

Программирование Python по моим конспектам Лекция 9.2 Питон, Программирование, Лекция, Длиннопост

И так бесконечно.


А вот и случай, когда нам такой цикл пригодится. Пишем программу которая принимает числа от 1 до 10, если число не входит в эти рамки- программа проявляет беспокойство по этому поводу.


Сначала я покажу, потом объясню.

Программирование Python по моим конспектам Лекция 9.2 Питон, Программирование, Лекция, Длиннопост

Первая строка- приглашение.

Вторая строка очень важна. Пока условие истинно, а истинно оно всегда, ибо True. Выполняем инструкции. Иначе говоря- выполняем бесконечно. Первая строка инструкции- принимаем значение числа. Вторая- сравниваем с условием - должно быть либо равно или больше единицы но меньше или равно десяти. Если все ок переходим к оператору break. Вот оно что!! это та самая панацея, которая выбрасывает нас из бесконечного цыкла. Без нее мы бы там вечно вертелись. Если же наше число не удовлетворяет это условие мы ессно не попадаем на break, а идем к else,  и цикл запускается заново.

А теперь пример более толковый.


Сейчас мы будем определять площадь разных треугольников до тех пор пока это нам не надоест.

Программирование Python по моим конспектам Лекция 9.2 Питон, Программирование, Лекция, Длиннопост

В первой строке мы просто выводим что то типа приветствия

За ней мы объявляем переменную, которая будет нашим условием и по умолчанию она указывает на строку "да"

Далее начинается условие цикла. Пока да- исполняй все, что внутри. В противном случае- не заходи в цикл.

В нашем случае переменная указывает на да. Значит мы в цикл заходим. Две первые строки инструкций цикла мы получаем длину и высоту прямоугольника. Третья строка- получаем площадь прямоугольника, которая получает имя vol. Далее мы выводим на экран наш результат и спрашиваем продолжить ли. На наш ответ начинает указывать ранеезадекларированная переменная ans, та самая, которая по умолчанию "да".

Если она снова станет "да"- цикл повторяется. Если мы напишем "нет" или вообще похер что, кроме "да"- цикл обрывается, нас из него выгоняют и мы оказываемся прямо пред последней строкой, которая благодарит нас за использование программой.

Программирование Python по моим конспектам Лекция 9.2 Питон, Программирование, Лекция, Длиннопост

Вот так, быть может, станет понятнее

Программирование Python по моим конспектам Лекция 9.2 Питон, Программирование, Лекция, Длиннопост

На сегодня мои полномочия все.