(there used to be python code here)
РЕДАКТИРОВАТЬ: мои извинения, не понял, что это домашнее задание. Мне действительно нужно проверить теги, прежде чем ответить. Вот объяснение того, что должно произойти.
Очевидно, вы знаете, что пытаетесь вывести последовательные числа от 1 до 50, поэтому вам понадобится счетчик. Вы выяснили, что для этого потребуется range()
звонок, но он должен быть от 1 до 51, а не от 2 до 50.
Причина, по которой вызов range()
должен быть от 1 до 51, заключается в следующем: он запускает переменную i
в 1
, а затем проверяет, достигла ли она своей цели (51
), перед циклом , Если цель достигнута (то есть, если i == 51
), она выйдет из цикла без выполнения кода цикла. Поэтому вместо того, чтобы переходить от 1 к 50, вы переходите с 1 на 51, чтобы мы не пропустили 50-ю итерацию.
Далее вы захотите, чтобы цифры появлялись на экране. Но использование команды print
в python выводит каждое число на новую строку! Это явно не то, что вы хотите. Таким образом, вам нужно будет создать строку буфера для добавления каждого числа, пока вы не будете готовы напечатать строку. Вы можете назвать это «вывод» или как угодно.
Лично мне нравится очищать буфер ДО цикла for
, просто чтобы убедиться, что никакие следы остаточной памяти не попадут в вывод. Назовите меня параноиком. Поэтому я пишу output = ""
в строке перед циклом.
Теперь у вас есть строка буфера, все, что вам нужно сделать, это следовать логическому потоку:
- Добавить
i
в буфер output
.
- Если
i
кратно 5, выведите буфер output
и верните его обратно в пустую строку. (Мы делаем это так, чтобы мы могли запустить буфер для следующей строки.)
- Если
i
НЕ кратно 5, добавьте запятую в буфер output
, чтобы следующий добавленный номер был после запятой.
- Продолжаем наш цикл.
Эти шаги должны быть довольно просты для понимания. Шаг 2, который вы уже видели раньше ... Чтобы проверить, является ли число кратным другому числу, просто используйте %
. Если A % B == 0
, то A кратно B.
Это должно быть довольно простым объяснением того, как решить эту проблему. Надеюсь, это поможет.
И извините за то, что испортили ваш опыт обучения, разместив ответ! Теперь вы поймете, почему ответ работает.