22 Цикл while. Инструкции break, continue, else

stepik.org/course/63085/promo
Записывайся на мой бесплатный курс на Stepic, где найдешь много практических задач
Стать спонсором канала и получить доступ к дополнительным материалам по Python
/ @egoroffchannel
/ artem_egorov
egoroffartem.pythonanywhere.co...
В цикле while есть необязательный блок, который ставится после окончания цикла. Он называется else. В него можно попасть в случае, если цикл закончит свою работу без принуждения (без оператора break)
Оператор break - принудительный выход из цикла
egoroffartem.pythonanywhere.co...
Подробная информация об этом уроке
Все видео этого курса можете найти на сайте
egoroffartem.pythonanywhere.co...
или в Вк
videos-177962775?secti...
Если кому нужна помощь, предлагаю индивидуальные занятия. Подробнее пишите в личку в вк
artem_egoroff
python.study
В данном группе можете найти информацию о новых видео и задать вопросы

Пікірлер: 108

  • @egoroffchannel
    @egoroffchannelАй бұрын

    🫵 Теория без практики - ничто, поэтому 👇 🐍 stepik.org/course/63085/promo 👉 специально для тебя создал бесплатный топовый курс по Python 👉 В нем тебя ждет: 📗 более 400 практических заданий на программирование 📗 более 250 тестовых заданий на проверку материала 📗 десятки часов видеоматерилов по теории 📗 видеоразборы решения заданий 📗 текстовые материалы по урокам, примеры кода 📗 доступ к закрытому чату с дружественной обстановкой 📗 сертификат в случае успешного прохождения курса

  • @aberone_library
    @aberone_library5 жыл бұрын

    "Давайте будем в бесконечном цикле заставлять пользователя вводить строку". Звучит как какая-то пытка))

  • @user-ye8gx8mp9j

    @user-ye8gx8mp9j

    2 жыл бұрын

    Твой сайт не будет пользоваться популярностью

  • @Vlandeh

    @Vlandeh

    Жыл бұрын

    @@user-ye8gx8mp9j звучит как угроза

  • @Majorov_Alexandr

    @Majorov_Alexandr

    Жыл бұрын

    Это Реквием...

  • @PbI6AK213

    @PbI6AK213

    4 ай бұрын

    Д

  • @mistressbowie2820
    @mistressbowie28203 жыл бұрын

    Наконец-то стало понятно, как континие работает в цикле. Спасибо!

  • @user-gc8ko1jf3f
    @user-gc8ko1jf3f3 жыл бұрын

    Артём, спасибо за уроки. И я очень рад, что ты допилил курс на stepik. Я в свое время остановился, не закончив его из-за отсутствия наполнения практических занятий в последней третей курса. И он на степике висел как не завершенный. И тут мне прилетает сообщение, что у меня сертификат о том, что я завершил твой курс на 74% . Это означало, что ты закончил огромную работу над ним и теперь его можно пройти и получить сертификат. Спасибо за всё. Ты очень хороший учитель, а твой курс заслуженно имеет оценку 4,8!!!

  • @CannelRu
    @CannelRu2 жыл бұрын

    0:50 бесконечный цикл, остановить кнтрл + Ц 1:58 break принудительный выход из цикла 2:46 пример 3:20 continue переход в начало цикла 4:18 else 5:15 break и else взаимоисключающие блоки 5:28 пример

  • @Fravije
    @Fravije Жыл бұрын

    Спасибо! Вы первый кто смог объяснить доходчиво (для меня по крайней мере) про else в цикле while!

  • @nikitiki524
    @nikitiki5243 жыл бұрын

    Доступно, просто, понятно, логично. Отличный урок и пример. Спасибо!

  • @user-jt8go7dx4j
    @user-jt8go7dx4j4 жыл бұрын

    a=int(input('введите число')) i=1 while i

  • @hangarek8680

    @hangarek8680

    3 жыл бұрын

    спс

  • @hangarek8680

    @hangarek8680

    3 жыл бұрын

    n = int(input()) i = 1 a = [] while i ** 2

  • @ayanopansu
    @ayanopansu4 жыл бұрын

    Спасибо за урок, очень подробно и понятно объяснил

  • @alexes8869
    @alexes8869 Жыл бұрын

    спасибо большое, крайне помог

  • @user-nb4ps3kk4w
    @user-nb4ps3kk4w Жыл бұрын

    Спасибо за такие качественные подробные обяснения

  • @user-sy5rz5bv6l
    @user-sy5rz5bv6l4 жыл бұрын

    Спасибо за видео. Самые понятные объяснения из тех, что мне приходилось слышать.

  • @wertyhor_
    @wertyhor_ Жыл бұрын

    Спасибо огромное! Вообще не мог разобраться с break но вы объяснили. Спс друг)

  • @j2st115
    @j2st115 Жыл бұрын

    Спасибо большое тебе за то, что объяснил нормально что такое оператор continue)

  • @mr.nikison
    @mr.nikison3 жыл бұрын

    очень хорошо обьесняешь, спасибо

  • @Dmitrii-Zhinzhilov
    @Dmitrii-Zhinzhilov Жыл бұрын

    Артём, благодарю! 🤝👍🔥🔥🔥

  • @quentindrenton
    @quentindrenton Жыл бұрын

    Я буду тут каждый день. День 11. 3 недели изучал другое. Теперь продолжаю.

  • @katrinpozd8494
    @katrinpozd84943 жыл бұрын

    Артём, вы мой герой!!!

  • @user-rm9wd7qq6k
    @user-rm9wd7qq6k Жыл бұрын

    Спасибо за урок!!!

  • @HuggyWuggyy
    @HuggyWuggyy9 ай бұрын

    Спасибо! И это теперь знаем )

  • @anonas712
    @anonas7128 ай бұрын

    Очень благодарны вам!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • @DyadkaChizell
    @DyadkaChizell2 жыл бұрын

    Спасибо большое!

  • @stas_v
    @stas_v2 жыл бұрын

    Спасибо! Теперь понял.

  • @ulanulan7739
    @ulanulan773917 күн бұрын

    Благодарю

  • @Dimanomide
    @Dimanomide4 жыл бұрын

    Здравствуйте. Я почти прошел основы Питона по видео с другого канала, дошел до работы с модулями. Несколько ваших уроков я тоже прошел, собираюсь допройти их позже. Вопрос вот в чем. Я решил попробовать написать небольшую программу - калькулятор, который работает через терминал. Я написал даже два таких калькулятора, первый работает только с двумя числами X, Y, он может складывать, вычитать, умножать, делить, возводить в степень, извлекать корень и еще несколько операций, о втором калькуляторе я как раз хотел спросить вас. Я решил попробовать создать калькулятор, способный для начала только складывать больше двух чисел. Вот его код. x = float (input ('Введите число X: ')) z = str (input ('Введите знак (+): ')) y = float (input ('Введите число Y: ')) r = str (input ('Введите знак (+, =): ')) def func_sum (): # Возвращает сумму X + Y return (x + y) if r == '=': print (func_sum ()) elif r == '+': y = float (input ('Введите число Y: ')) r = str (input ('Введите знак (+, =): ')) if r == '=': print ((func_sum()) + y) В коде происходит следующее. Сначала пользователь вводит число, потом знак + (это строковая переменная), потом второе число. Далее возможно два варианта: если пользователь после второго числа введет знак =, то выводится print (func_sum ()), если +, то пользователь сможет ввести еще одно число, а потом знак =, на выходе получится print ((func_sum()) + y) . Этот калькулятор может складывать до трех чисел, т.е. две операции сложения. Вопрос в том, можно ли сделать своего рода бесконечный цикл, который можно прервать на любом проходе, поставив знак =, а пока пользователь после второго и последующих чисел вводит знак +, то пользователь сможет вводить числа пока очередном проходе цикла не поставит знак равно? При выходе из цикла должна выводится сумма введенных чисел.

  • @DyadkaChizell
    @DyadkaChizell2 жыл бұрын

    Все честные)

  • @alexwave9334
    @alexwave9334 Жыл бұрын

    А в чём преимущество else от while, когда как мне кажется проще использовать связку if-else. В скорости? или в чём - то ещё?

  • @nyakonyan3822
    @nyakonyan3822 Жыл бұрын

    Здравствуйте , можете сказать где в этом коде ошибка и как её исправить i = 1 while i

  • @jamjam3337
    @jamjam3337 Жыл бұрын

    👏

  • @user-lf6bl7jf3p
    @user-lf6bl7jf3p4 жыл бұрын

    Как нижеописанную инструкцию с помощью циклов и функций сделать? То есть while(for),function вместо if. А то по циклам и функциям догнать не могу a = int(input("Сколько км в день пробегаетe?")) b = int(input("Сколько км нужно пробежать?")) if a

  • @Mcmern
    @Mcmern2 жыл бұрын

    4:06 ошибка: continue не пропускает всё что ниже ее внутри этого цикла

  • @user-bm9sn4ld3b
    @user-bm9sn4ld3b2 жыл бұрын

    Артём, а что значит “.pop”?

  • @dimanice7230
    @dimanice72302 жыл бұрын

    а можно функцией continue пользоватся в функции(def)

  • @tyniadec
    @tyniadec4 жыл бұрын

    Не могу понять, почему в последней программе значения перебираются, точнее говоря, почему последнее число из одно списка меняется?

  • @tyniadec

    @tyniadec

    4 жыл бұрын

    ладно, дело в пупе, каждый раз при присваивании его ласту, он менял список, отрезая последний и показывая его. Вопрос исчерпан

  • @Riemnand
    @Riemnand4 жыл бұрын

    Я знаю что урок уже прошел не один месяц назад. Но вдруг кто ответит: Если будут вложенные циклы (часто нужны при переборе), как принудительно остановить их все? For i in range(1, 101): For a in range(1, 101): Print(a ** i) If a ** i >= 200 Break Будет ли Break работать для всех циклов? Или тому, под которым он написан?

  • @0xKolyanus

    @0xKolyanus

    3 жыл бұрын

    break должен работать только для 1 цикла, в С++ я юзал глобальный метод exit(); Тут - пока что хз (

  • @user-xc9xw1tm7m
    @user-xc9xw1tm7m4 жыл бұрын

    всегда ++

  • @victoriafares6718
    @victoriafares6718 Жыл бұрын

    хотелось бы больше инфо про continue, например как пропустить этаж (например под номером 13) в гостинице, чтобы программа не выдавала этот номер, а сразу же шла на 14

  • @user-yl4bq2dc8y

    @user-yl4bq2dc8y

    Жыл бұрын

    Просто в блоке кода с if continue пишешь чтобы он пропускал 13, логична же

  • @user-mh5yb3ub3r
    @user-mh5yb3ub3r4 жыл бұрын

    Лопаты решил вот так. k,r=map(int,input().split()) y=10 while True: if r==k: break if (y+r)%k==0 or y%k==0: break y=y+10 if r==k: x=1 elif(y+r)%k==0: x=(y+r)/k%10 else: x=y/k%10 print(int(x))

  • @user-gm8kf7jj1d

    @user-gm8kf7jj1d

    3 жыл бұрын

    Сколько вам лет? Довольно сложное решение, мой мозг до такого еще не дошел!

  • @user__xizzll
    @user__xizzll Жыл бұрын

    Куплю лопату: k, r = map(int,input().split()) summ=k While summ%10!=r: summ=summ+k If summ%10==0: Print(summ/k) break Else: n=summ/k print(n)

  • @TheZalim80
    @TheZalim802 жыл бұрын

    Добрый день автору канала. Скажите, а Вы проводите платные консультации и если да то как можно с Вами связаться?

  • @egoroffchannel

    @egoroffchannel

    2 жыл бұрын

    добрый день, в любую соц сеть, ссылки в описании канала

  • @Anonim-im6ln
    @Anonim-im6ln2 жыл бұрын

    Клас.)

  • @AlekseiPetrovichev
    @AlekseiPetrovichev4 жыл бұрын

    а почему в программе Питон начинает искать нечётные цифры с права налево, а не наоборот?

  • @kingaita9523

    @kingaita9523

    4 жыл бұрын

    pop () - встроенная функция в Python, которая удаляет и возвращает последнее значение из списка

  • @Rim3347
    @Rim33474 жыл бұрын

    a,b = map(int, input().split()) a1=a while (a-b)%10!=0: a=a+a1 print(int(a/a1))

  • @DoktorZlo96

    @DoktorZlo96

    4 жыл бұрын

    не правильно

  • @bobby_ridge
    @bobby_ridge Жыл бұрын

    Смысл писать else, если после инструкции break пргорамма выйдет из цикла, тем самым пропустив последний print(если убрать else и оставить его после if)?

  • @zaurd351
    @zaurd3515 жыл бұрын

    Решение задачи 'Куплю лопату': k,r=map(int, input().split()) i=1 while (k*i-r)%10!=0 and k*i%10!=0 : i=i+1 print(i)

  • @klicker228

    @klicker228

    5 жыл бұрын

    Откуда эта задача

  • @HmaPaYT

    @HmaPaYT

    5 жыл бұрын

    Зачем 2 раза писать ИФ, если можно поставить ОР? И скобки не нужны. И зачем печатать И каждый раз, для проверки?

  • @zaurd351

    @zaurd351

    5 жыл бұрын

    @@HmaPaYT решил иначе

  • @PAIN153

    @PAIN153

    4 жыл бұрын

    @@zaurd351 можешь объяснить ход своих мыслей? Как ты дошел до такого решения?

  • @user-un1xi7tw9k
    @user-un1xi7tw9k3 жыл бұрын

    print("TOP")

  • @cheesy_boya

    @cheesy_boya

    3 жыл бұрын

    да я вижу вы у нас программист

  • @hulumulu991
    @hulumulu9912 жыл бұрын

    Кто может помочь? Я хочу сделать так что бы при не правильном выборе программа завершилась break и continue почему-то не работают

  • @rone3178
    @rone31782 жыл бұрын

    Питоноводы помогите, вот часть кода. Интересует часть с break. Когда ввожу слова Stop чтобы выйти из цикла все равно цикл продолжается...в чем проблема? Помогите g=answer=("Enter your answer1: ") people_answers = [] num = 1 while True: input(g) for c in answer: if c.isdigit(): num = int(num) + int(c) g = answer.replace(answer[-3:-2], str(num)) if answer == "": continue elif answer == "Stop" or answer == "STOP" or answer == "stop": break

  • @ggrechka
    @ggrechka5 жыл бұрын

    ## Yes - все чеСтные))

  • @egoroffchannel

    @egoroffchannel

    5 жыл бұрын

    Не понял комментария

  • @d1stance879

    @d1stance879

    5 жыл бұрын

    @@egoroffchannel 6.30 ошибка в комментарии

  • @egoroffchannel

    @egoroffchannel

    5 жыл бұрын

    @@d1stance879 а теперь понял)

  • @iglstivens

    @iglstivens

    3 жыл бұрын

    @Alikhan Aimakov i = int(input("Введите возраст: ")) if i print("не подходит") elif 6

  • @dengari1
    @dengari15 жыл бұрын

    скажи пожалуйста, что в моей программе не правильно? a = 117 # цена за лопату b = 3 # монета которая должна быть в конце цены c = a #переменная для проверки i = 1 # количество лопат while c%10!=b or c%10!=0:# у меня не работает условие or т.е даже когда остаток равен 0 цикл не завершается. А так программа работает, правда если решения нету, то она не работает собственно я и для этого поставил or, но он не хочет работать c+=a# i+=1# else:# print(i)#

  • @zaurd351

    @zaurd351

    5 жыл бұрын

    Необходимо использовать логическое 'и' ( and ) , ибо цикл while работает до тех пор, пока условие истинно (True), в твоем случае остаток ноль приводит к False одну часть условия, при этом другая остается True, цикл не останавливается

  • @vatrushix
    @vatrushix2 жыл бұрын

    какие результаты мы получим если break в цикле использовать без конкретнного условия?

  • @ananasanimator6049

    @ananasanimator6049

    Жыл бұрын

    плохие

  • @alex_pure
    @alex_pure2 жыл бұрын

    Куплю лопату: k, r = map(int, input().split()) i = 1 while i: if (k * i)%10 == 0 or (k * i)%10 == r: print(i) break i += 1

  • @user-se1dj1pn3o
    @user-se1dj1pn3o5 жыл бұрын

    Список есть масив?

  • @egoroffchannel

    @egoroffchannel

    5 жыл бұрын

    сложный вопрос) лучше скажи мне, в каком языке программирования ты познакомился с массивами? и я могу сказать, в чем их различия

  • @user-se1dj1pn3o

    @user-se1dj1pn3o

    5 жыл бұрын

    ​@@egoroffchannel Грубо говоря это мой первый язык. Я паскаль не много чекнул, а потом посоветовали pyhton вот у тебя учусь. Мне сказали, что нужно знать циклы, функции и массивы, чтобы ЕГЭ сдать. Я почему спросил, просто непривычно массив списком называть.

  • @egoroffchannel

    @egoroffchannel

    5 жыл бұрын

    да, тут надо привыкать к этому названию. я их в видео сам иногда называю массивами))) разница от паскаля и с++ здесь в том, что списке в себя могут хранить разные значения, и размерность их может расширяться при вызове метода (к примеру append)

  • @0xKolyanus

    @0xKolyanus

    3 жыл бұрын

    @@egoroffchannel С и С++ :)

  • @Igorr911
    @Igorr9114 жыл бұрын

    Странно, ты говоришь, что цикл завершается, когда выполнится эта инструкция, то есть break, а всё , что ниже этого цикла делаться не будет. А ниже находится инструкция i=+1, получается она выполняться не будет? Почему же тогда эта инструкция срабатывает???

  • @user-zv3hd5fr4z

    @user-zv3hd5fr4z

    4 жыл бұрын

    break срабатывает тогда, когда i становится равным 10

  • @indiramamatova1042

    @indiramamatova1042

    4 жыл бұрын

    Igor Ivanov или когда мы ставим некое условие И оно будет равно к этому срабатывает break

  • @-Forever-Young-
    @-Forever-Young-4 жыл бұрын

    комент

  • @user-xy3ez4ny9o
    @user-xy3ez4ny9o2 жыл бұрын

    Ребята, это в Пайтане?

  • @balamski7954
    @balamski79544 жыл бұрын

    Куплю лопату. k,r = map(int, input().split()) i=1 while k*i%10!=r: i=i+1 if k*i%10==0: print(i) break else: print(i) Взаимоисключающие штуки.

  • @user-cq1os3fg7m

    @user-cq1os3fg7m

    2 жыл бұрын

    А где эта задача?

  • @balamski7954

    @balamski7954

    2 жыл бұрын

    @@user-cq1os3fg7m одна из ссылок в описании

  • @tabigatkarbaev2831
    @tabigatkarbaev28314 жыл бұрын

    break не работает в некоторых случаях, true==breakpoint()

  • @deldel4476
    @deldel44765 жыл бұрын

    Что значит pop()!? Откуда?!

  • @egoroffchannel

    @egoroffchannel

    5 жыл бұрын

    В предыдущих видео я об этом рассказывал. Конкретно "Методы списков"

  • @deldel4476

    @deldel4476

    5 жыл бұрын

    egoroff_channel спасибо

  • @MrGodlion

    @MrGodlion

    4 жыл бұрын

    попса это, ее нужно показать, а потом вывести накуй)

  • @tv-no9bp
    @tv-no9bp5 жыл бұрын

    Тебе надо эту тему вставить после 18

  • @egoroffchannel

    @egoroffchannel

    5 жыл бұрын

    После 18го видео то есть?

  • @kadyr6344
    @kadyr63443 жыл бұрын

    как сделать программу в которой будет идти бесконечный цикл но при этом после каждого числа чтобы продолжить надо нажимать "Enter" (Это задание от отца)

  • @egoroffchannel

    @egoroffchannel

    3 жыл бұрын

    input() напиши внутри

  • @АРГОНАВТ3000

    @АРГОНАВТ3000

    3 жыл бұрын

    a = 1 while True: print(a) input() a = a + 1

  • @user-iq8el7xw8p
    @user-iq8el7xw8p4 жыл бұрын

    a,b=map(int,input().split()) i=1 while i>0: if (a*i-b)%10==0 or (a*i)%10==0: break i+=1 print(i)

  • @sofiipochta
    @sofiipochta9 ай бұрын

    Спасибо, посмотрела!

  • @keytspartachok4671
    @keytspartachok46713 жыл бұрын

    куплю лопату, решение a,b=map(int,input().split()) n=1 d=a*n c=int(str(d)[-1]) while c!=b and c!=0: n+=1 d=a*n c=int(str(d)[-1]) print(n)

  • @dixfantom1327
    @dixfantom13272 жыл бұрын

    Понятно видео 23 и 21 премиум НЕЧЕСНО((((

  • @user-jj1tx1xl3j
    @user-jj1tx1xl3j4 жыл бұрын

    не разрешено к просмотру( Уже которое видео

  • @egoroffchannel

    @egoroffchannel

    4 жыл бұрын

    некоторые видео доступны только спонсорам канала

  • @platon942

    @platon942

    4 жыл бұрын

    @@egoroffchannel за чтооооооо..?!?!?!?!?!

  • @user-sy5rz5bv6l

    @user-sy5rz5bv6l

    4 жыл бұрын

    @@platon942 За информацию иногда необходимо платить

Келесі