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
🫵 Теория без практики - ничто, поэтому 👇 🐍 stepik.org/course/63085/promo 👉 специально для тебя создал бесплатный топовый курс по Python 👉 В нем тебя ждет: 📗 более 400 практических заданий на программирование 📗 более 250 тестовых заданий на проверку материала 📗 десятки часов видеоматерилов по теории 📗 видеоразборы решения заданий 📗 текстовые материалы по урокам, примеры кода 📗 доступ к закрытому чату с дружественной обстановкой 📗 сертификат в случае успешного прохождения курса
"Давайте будем в бесконечном цикле заставлять пользователя вводить строку". Звучит как какая-то пытка))
@user-ye8gx8mp9j
2 жыл бұрын
Твой сайт не будет пользоваться популярностью
@Vlandeh
Жыл бұрын
@@user-ye8gx8mp9j звучит как угроза
@Majorov_Alexandr
Жыл бұрын
Это Реквием...
@PbI6AK213
4 ай бұрын
Д
Наконец-то стало понятно, как континие работает в цикле. Спасибо!
Артём, спасибо за уроки. И я очень рад, что ты допилил курс на stepik. Я в свое время остановился, не закончив его из-за отсутствия наполнения практических занятий в последней третей курса. И он на степике висел как не завершенный. И тут мне прилетает сообщение, что у меня сертификат о том, что я завершил твой курс на 74% . Это означало, что ты закончил огромную работу над ним и теперь его можно пройти и получить сертификат. Спасибо за всё. Ты очень хороший учитель, а твой курс заслуженно имеет оценку 4,8!!!
0:50 бесконечный цикл, остановить кнтрл + Ц 1:58 break принудительный выход из цикла 2:46 пример 3:20 continue переход в начало цикла 4:18 else 5:15 break и else взаимоисключающие блоки 5:28 пример
Спасибо! Вы первый кто смог объяснить доходчиво (для меня по крайней мере) про else в цикле while!
Доступно, просто, понятно, логично. Отличный урок и пример. Спасибо!
a=int(input('введите число')) i=1 while i
@hangarek8680
3 жыл бұрын
спс
@hangarek8680
3 жыл бұрын
n = int(input()) i = 1 a = [] while i ** 2
Спасибо за урок, очень подробно и понятно объяснил
спасибо большое, крайне помог
Спасибо за такие качественные подробные обяснения
Спасибо за видео. Самые понятные объяснения из тех, что мне приходилось слышать.
Спасибо огромное! Вообще не мог разобраться с break но вы объяснили. Спс друг)
Спасибо большое тебе за то, что объяснил нормально что такое оператор continue)
очень хорошо обьесняешь, спасибо
Артём, благодарю! 🤝👍🔥🔥🔥
Я буду тут каждый день. День 11. 3 недели изучал другое. Теперь продолжаю.
Артём, вы мой герой!!!
Спасибо за урок!!!
Спасибо! И это теперь знаем )
Очень благодарны вам!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Спасибо большое!
Спасибо! Теперь понял.
Благодарю
Здравствуйте. Я почти прошел основы Питона по видео с другого канала, дошел до работы с модулями. Несколько ваших уроков я тоже прошел, собираюсь допройти их позже. Вопрос вот в чем. Я решил попробовать написать небольшую программу - калькулятор, который работает через терминал. Я написал даже два таких калькулятора, первый работает только с двумя числами 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) . Этот калькулятор может складывать до трех чисел, т.е. две операции сложения. Вопрос в том, можно ли сделать своего рода бесконечный цикл, который можно прервать на любом проходе, поставив знак =, а пока пользователь после второго и последующих чисел вводит знак +, то пользователь сможет вводить числа пока очередном проходе цикла не поставит знак равно? При выходе из цикла должна выводится сумма введенных чисел.
Все честные)
А в чём преимущество else от while, когда как мне кажется проще использовать связку if-else. В скорости? или в чём - то ещё?
Здравствуйте , можете сказать где в этом коде ошибка и как её исправить i = 1 while i
👏
Как нижеописанную инструкцию с помощью циклов и функций сделать? То есть while(for),function вместо if. А то по циклам и функциям догнать не могу a = int(input("Сколько км в день пробегаетe?")) b = int(input("Сколько км нужно пробежать?")) if a
4:06 ошибка: continue не пропускает всё что ниже ее внутри этого цикла
Артём, а что значит “.pop”?
а можно функцией continue пользоватся в функции(def)
Не могу понять, почему в последней программе значения перебираются, точнее говоря, почему последнее число из одно списка меняется?
@tyniadec
4 жыл бұрын
ладно, дело в пупе, каждый раз при присваивании его ласту, он менял список, отрезая последний и показывая его. Вопрос исчерпан
Я знаю что урок уже прошел не один месяц назад. Но вдруг кто ответит: Если будут вложенные циклы (часто нужны при переборе), как принудительно остановить их все? For i in range(1, 101): For a in range(1, 101): Print(a ** i) If a ** i >= 200 Break Будет ли Break работать для всех циклов? Или тому, под которым он написан?
@0xKolyanus
3 жыл бұрын
break должен работать только для 1 цикла, в С++ я юзал глобальный метод exit(); Тут - пока что хз (
всегда ++
хотелось бы больше инфо про continue, например как пропустить этаж (например под номером 13) в гостинице, чтобы программа не выдавала этот номер, а сразу же шла на 14
@user-yl4bq2dc8y
Жыл бұрын
Просто в блоке кода с if continue пишешь чтобы он пропускал 13, логична же
Лопаты решил вот так. 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
3 жыл бұрын
Сколько вам лет? Довольно сложное решение, мой мозг до такого еще не дошел!
Куплю лопату: 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)
Добрый день автору канала. Скажите, а Вы проводите платные консультации и если да то как можно с Вами связаться?
@egoroffchannel
2 жыл бұрын
добрый день, в любую соц сеть, ссылки в описании канала
Клас.)
а почему в программе Питон начинает искать нечётные цифры с права налево, а не наоборот?
@kingaita9523
4 жыл бұрын
pop () - встроенная функция в Python, которая удаляет и возвращает последнее значение из списка
a,b = map(int, input().split()) a1=a while (a-b)%10!=0: a=a+a1 print(int(a/a1))
@DoktorZlo96
4 жыл бұрын
не правильно
Смысл писать else, если после инструкции break пргорамма выйдет из цикла, тем самым пропустив последний print(если убрать else и оставить его после if)?
Решение задачи 'Куплю лопату': 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
5 жыл бұрын
Откуда эта задача
@HmaPaYT
5 жыл бұрын
Зачем 2 раза писать ИФ, если можно поставить ОР? И скобки не нужны. И зачем печатать И каждый раз, для проверки?
@zaurd351
5 жыл бұрын
@@HmaPaYT решил иначе
@PAIN153
4 жыл бұрын
@@zaurd351 можешь объяснить ход своих мыслей? Как ты дошел до такого решения?
print("TOP")
@cheesy_boya
3 жыл бұрын
да я вижу вы у нас программист
Кто может помочь? Я хочу сделать так что бы при не правильном выборе программа завершилась break и continue почему-то не работают
Питоноводы помогите, вот часть кода. Интересует часть с 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
## Yes - все чеСтные))
@egoroffchannel
5 жыл бұрын
Не понял комментария
@d1stance879
5 жыл бұрын
@@egoroffchannel 6.30 ошибка в комментарии
@egoroffchannel
5 жыл бұрын
@@d1stance879 а теперь понял)
@iglstivens
3 жыл бұрын
@Alikhan Aimakov i = int(input("Введите возраст: ")) if i print("не подходит") elif 6
скажи пожалуйста, что в моей программе не правильно? 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
5 жыл бұрын
Необходимо использовать логическое 'и' ( and ) , ибо цикл while работает до тех пор, пока условие истинно (True), в твоем случае остаток ноль приводит к False одну часть условия, при этом другая остается True, цикл не останавливается
какие результаты мы получим если break в цикле использовать без конкретнного условия?
@ananasanimator6049
Жыл бұрын
плохие
Куплю лопату: 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
Список есть масив?
@egoroffchannel
5 жыл бұрын
сложный вопрос) лучше скажи мне, в каком языке программирования ты познакомился с массивами? и я могу сказать, в чем их различия
@user-se1dj1pn3o
5 жыл бұрын
@@egoroffchannel Грубо говоря это мой первый язык. Я паскаль не много чекнул, а потом посоветовали pyhton вот у тебя учусь. Мне сказали, что нужно знать циклы, функции и массивы, чтобы ЕГЭ сдать. Я почему спросил, просто непривычно массив списком называть.
@egoroffchannel
5 жыл бұрын
да, тут надо привыкать к этому названию. я их в видео сам иногда называю массивами))) разница от паскаля и с++ здесь в том, что списке в себя могут хранить разные значения, и размерность их может расширяться при вызове метода (к примеру append)
@0xKolyanus
3 жыл бұрын
@@egoroffchannel С и С++ :)
Странно, ты говоришь, что цикл завершается, когда выполнится эта инструкция, то есть break, а всё , что ниже этого цикла делаться не будет. А ниже находится инструкция i=+1, получается она выполняться не будет? Почему же тогда эта инструкция срабатывает???
@user-zv3hd5fr4z
4 жыл бұрын
break срабатывает тогда, когда i становится равным 10
@indiramamatova1042
4 жыл бұрын
Igor Ivanov или когда мы ставим некое условие И оно будет равно к этому срабатывает break
комент
Ребята, это в Пайтане?
Куплю лопату. 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
2 жыл бұрын
А где эта задача?
@balamski7954
2 жыл бұрын
@@user-cq1os3fg7m одна из ссылок в описании
break не работает в некоторых случаях, true==breakpoint()
Что значит pop()!? Откуда?!
@egoroffchannel
5 жыл бұрын
В предыдущих видео я об этом рассказывал. Конкретно "Методы списков"
@deldel4476
5 жыл бұрын
egoroff_channel спасибо
@MrGodlion
4 жыл бұрын
попса это, ее нужно показать, а потом вывести накуй)
Тебе надо эту тему вставить после 18
@egoroffchannel
5 жыл бұрын
После 18го видео то есть?
как сделать программу в которой будет идти бесконечный цикл но при этом после каждого числа чтобы продолжить надо нажимать "Enter" (Это задание от отца)
@egoroffchannel
3 жыл бұрын
input() напиши внутри
@АРГОНАВТ3000
3 жыл бұрын
a = 1 while True: print(a) input() a = a + 1
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)
Спасибо, посмотрела!
куплю лопату, решение 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)
Понятно видео 23 и 21 премиум НЕЧЕСНО((((
не разрешено к просмотру( Уже которое видео
@egoroffchannel
4 жыл бұрын
некоторые видео доступны только спонсорам канала
@platon942
4 жыл бұрын
@@egoroffchannel за чтооооооо..?!?!?!?!?!
@user-sy5rz5bv6l
4 жыл бұрын
@@platon942 За информацию иногда необходимо платить