Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 18.07.2019, 20:04   #1
Виктория1112
 
Регистрация: 17.04.2019
Сообщений: 7
Репутация: 10
По умолчанию Цикл в питоне

всем привет! скажите пожалуйста, почему в данном коде в 5 строке нужно еще раз вводить переменную через input, если мы вначале вводим? я убрала ее, и цикл пошел бесконечный, но непонятно почему именно так происходит
Код:
now = int(input())
seqSum = 0
while now != 0:
       seqSum = seqSum + now
       now = int(input())
       print(seqSum)
______________________
Используйте тег [CODE] (кнопка [CODE] в форме сообщения) при вставке кода на форум. Особенно для Питона. Подробнее в FAQ

Последний раз редактировалось Alex11223; 18.07.2019 в 20:30.
Виктория1112 вне форума   Ответить с цитированием
Старый 18.07.2019, 20:31   #2
Alex11223
Модератор
Заслуженный модератор
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 18,828
Репутация: 3689

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от Виктория1112 Посмотреть сообщение
и цикл пошел бесконечный
Так оно ж в условии цикла.
Цитата:
Сообщение от Виктория1112 Посмотреть сообщение
почему
видимо задача такая.
Alex11223 вне форума   Ответить с цитированием
Старый 18.07.2019, 20:44   #3
ViktorR
Профессионал
 
Регистрация: 23.10.2010
Сообщений: 1,307
Репутация: 644
По умолчанию

Условием вхождения в цикл является такое значение переменной now, которое не равно нулю.
Если вы перед циклом ввели значение для now, которое не равно нулю, то начинают выполняться операторы тела цикла.
Эти операторы будут выполняться до тех пор, пока не изменится условие вхождения в цикл. Т.е. в теле цикла переменную now надо изменять.
Например, введите для now значение 5 (с удалённой строкой запроса, как вы сделали последний раз), а в цикле добавьте строку:
Код:
now = now - 1
print(now)
С другой стороны.
Ваш кусок кода подсчитывает сумму вводимых значений.
В данном случае требуется, что бы первое значение было не нулевым.
Тогда, в цикле, будут запрашиваться остальные значения для суммирования.
Для завершения подсчёта необходимо ввести 0.
В этом случае цикл завершится.
Код:
print(seqSum)
выводит текущее значение суммы, но если его вынести из тела цикла, то будет выведена только итоговая сумма.
__________________
Как-то так, ...
ViktorR вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OПП в питоне malowe Python 1 12.06.2019 16:46
Бот вк на питоне Се33иН Python 0 04.06.2019 19:54
Задача на питоне Витя1996 Помощь студентам 0 27.05.2012 09:23
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) Mr.User Помощь студентам 9 23.11.2007 02:34


18:07.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.