Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755

Как работают циклы?

28.11.2019, 20:45. Показов 1386. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что то не понимаю, как это работает.
Python
1
2
3
4
sum = 0
for i in range(1, 6):
    sum += i
    print(sum,'+1=',i) #сам придумал так написать, хотел понять, как приравнивается.
Что то не пойму, в этой строке sum += i, что к чему присваивается? Как изменить четвёртую строку, чтобы было логически верно?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.11.2019, 20:45
Ответы с готовыми решениями:

Неправильно работают циклы
Данный ниже код - мега-игра "виселица". Код хоть и слишком громоздкий как для Python, но, вроде бы, понятный и в лишних комментариях не...

Не работают вложенные циклы
Всем доброго времени суток, Сильно не ругайте, только второй день изучаю Python. Вот кусок кода: def checkExistRecord(): f =...

Как работают циклы?
Мне нужно написать программу, выполняющую следующие действия: 1. Ввести две строки текста с подсказками при вводе; 2. Определить и...

27
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
14.12.2019, 12:09  [ТС]
Студворк — интернет-сервис помощи студентам
А зачем?

Добавлено через 1 минуту
Здесь, если правильно ввел, происходит выход из цикла, а если неправильно, опять задается вопрос.
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
14.12.2019, 12:17
Блок-схема нужна для понимания работы кода (особенно ещё ненаписанного).

Добавьте счётчик и проверяйте не превысили ли 5 попыток ввода.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
14.12.2019, 12:37  [ТС]
А как сюда приделать счетчик?
Python
1
2
3
4
5
6
x=input('Введите целое число ')
while type(x) !=int: #так как после инпута строка то входим в цикл.
    try:
        x=int(x) # если можно преобразовать, то выходим из цикла и из программы.
    except ValueError:  
        x=input('Не то ввели. Введите ещё раз ') # опять входим в цикл
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
14.12.2019, 12:40
С лёгкостью

Вы псевдокодом пробуйте написать ТЗ (техзадание). Типа так:
1) вводится строка
2) делается попытка преобразовать её в целое число
3) если не получилось, то увеличиваем счётчик неудачных попыток и…
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
14.12.2019, 17:33  [ТС]
Увидел счетчик в другом примере и прилепил сюда. Сейчас принт осталось написать.
Python
1
2
3
4
5
6
7
8
i=0
x=input('Введите целое число ')
while type(x) !=int and i<5: #так как после инпута строка то входим в цикл.
    try:
        x=int(x) # если можно преобразовать, то выходим из цикла и из программы.
    except ValueError:  
        x=input('Не то ввели. Введите ещё раз ') # опять входим в цикл
        i=i+1
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
14.12.2019, 17:39
Вот только после пяти неправильных вводов у вас сейчас в переменной будет лежать чёрти что.

Если смотреть глобально, то от кода ожидается два варианта:
1) превышен лимит попыток, завершаем программу.
2) ввели число и успешно провели валидацию. С переменной можно дальше работать.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
14.12.2019, 17:42  [ТС]
Python
1
2
3
4
5
6
7
8
9
10
i=0
x=input('Введите целое число ')
while type(x) !=int and i<5: #так как после инпута строка то входим в цикл.
    try:
        x=int(x) # если можно преобразовать, то выходим из цикла и из программы.
    except ValueError:  
        x=input('Не то ввели. Введите ещё раз. Вы ввели ') # опять входим в цикл
        i=i+1
        if i==4:
            print('Давай, до свиданья!')
Добавлено через 1 минуту
Что, не правильно написал?
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
14.12.2019, 17:49
Да сойдёт

Добавлено через 1 минуту
Только
Python
1
exit()
добавь в ветке с if i==4, чтобы код остановился.

Добавлено через 4 минуты
Мой вариант:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
i = 0
x = input('Введите целое число ')
while True:
    try:
        x = int(x)
        break
    except ValueError:
        i += 1
        if i >= 5:
            print('Давай, до свиданья!')
            exit(1)            
        x = input('Не то ввели. Введите ещё раз ')
print('valid', x)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.12.2019, 17:49

Постигаю c++ и не могу в здешние циклы, а ещё в тип char кто знает как они работают подскажите
Есть сия код. Массив 7 столбцов на 5 строк (5 доярок(строки), 6 дней(столбцы), и 7 столбец для занесения в него среднего числа) ...

Разбор кода: объясните пожалуйста как работают циклы for, для чего нужен процент и что такое rnd.next
Добрый вечер, объясните пожалуйста как работают циклы for, для чего нужен процент и что такое rnd.next? Random rnd = new...

Как работают вложенные циклы в "методе пузырька"
Всем доброго времени суток ! Я только недавно начала изучать C# и вот столкнулся с непониманием работы вложенных циклов при сортировки...

Не работают циклы
До переустановки винды была рабочая программа, такое ощущение что после переустановки матлаб игнорирует циклы, все массивы размером 1, но...

Не работают вложенные циклы
Доброго времени суток! Задача такая: есть три целых чичла от 1 до 9 (a, b и c), найти сумму этих чисел, если abc+bca=1443... Не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Новые блоги и статьи
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru