Введение
Эта статья посвящена созданию визуальной пирамиды чисел в консоли. Программа принимает от пользователя количество уровней (ступеней), а затем строит соответствующую пирамиду. Код будет разобран пошагово, чтобы каждый мог понять его работу и применить полученные знания на практике.
Описание программы
Программа начинается с запроса у пользователя количества ступеней пирамиды (rows). Затем она создает новую переменную new_number, которая начинается с единицы и увеличивается на два после каждого цикла.
Основной цикл проходит через все строки пирамиды. Для каждой строки программа вычисляет количество пробелов, которые нужно вывести перед числами. Это делается путем вычитания текущего уровня из общего количества строк.
Затем идет вложенный цикл, который выводит числа в текущей строке. Каждое число печатается с двумя пробелами между ними. После завершения вывода всех чисел для данной строки происходит переход на следующую строку.
Пример работы программы
Теперь давайте рассмотрим код более детально.
Код программы
Тот же код ниже для копирования и вставки в программу. Не забывайте про необходимый отступ пробелами в определённых местах в начале строки, так как код на сервере блога может отображаться некорректно.
rows = int(input('Введите кол-во ступеней пирамиды: ')) # rows — максимальное (полное) число (количество) строк.
new_number = 1
for line in range(rows): # line — номер текущей строки.
space_count = rows - line - 1 # Количество отступов в начале пирамиды считается, как разность количества ступеней и текущей строки. ' - 1 ' Нужен для того, что бы наша пирамида не сдвигалась (Что бы наш самый нижний ряд начинался точно с самого начала и без пробелов). Это выражение можно интерпретировать, как количество сдвигов равно максимальному (полному) числу (количеству) строк минус номер текущей строки.
print(' ' * space_count, end = '') # space_count — количество сдвигов. И в таком случае при знании точного количества сдвигов (space_count), мы можем выводить нужное количество пробелов с помощью умножения. Умножаем строку из пробелов на количество, не забывая про обязательный оператор 'end = ''.
for number in range(line + 1):
print(new_number, end = ' ') # В моём случае 7 пробелов между цифрами, что бы они не склеивались между собой
new_number += 2
print()
Разбор кода
- rows = int(input('Введите кол-во ступеней пирамиды: '))
# Это первая строка кода, где программа запрашивает у пользователя ввести количество ступеней пирамиды. Функция input() позволяет пользователю ввести данные, а int() преобразует их в целое число.
- new_number = 1
# Здесь создается переменная new_number, которая изначально равна 1. Эта переменная будет использоваться для хранения текущего числа, которое должно быть выведено в пирамиде.
- for line in range(rows):
- space_count = rows - line - 1
- print(' ' * space_count, end = '')
- for number in range(line + 1):
- print(new_number, end = ' ')
- new_number += 2
- print()
# Это основной блок кода, который отвечает за построение одной строки пирамиды. Давайте разберем его подробнее:
- Цикл по строкам: for line in range(rows):
# Этот цикл проходит по всем строкам пирамиды. Переменная line представляет текущую строку. - Вычисление количества пробелов: space_count = rows - line - 1
# Количество пробелов для каждой строки определяется как разница между общим количеством строк и номером текущей строки. - Печать пробелов: print(' ' * space_count, end = '')
# Здесь мы используем оператор умножения строки для печати указанного количества пробелов. - Цикл по числам в строке: for number in range(line + 1):
# Этот цикл проходит по каждому числу в текущей строке. Число определяется как new_number, которое увеличивается на 2 после каждого цикла (new_number += 2). - Печать чисел: print(new_number, end = ' ')
# Мы выводим текущее число и добавляем несколько пробелов для форматирования. - Переход на новую строку: print()
# После того, как все числа в строке были напечатаны, мы переходим к следующей строке.
Итог разбора кода:
Заключение
В этой статье была рассмотрена простая, но эффективная программа на Python, которая строит пирамиду чисел в консоли, с помощью двух циклов и формулы с отрицательным шагом. Каждый шаг кода был подробно объяснен, что делает эту программу доступной даже для начинающих программистов. Надеюсь, эта статья помогла вам лучше понять основы программирования на Python и вдохновила вас на создание собственных интересных проектов!
ПОЛЕЗНЫЕ РЕСУРСЫ:
---------------------------------------------------
Сообщество дизайнеров в VK
https://vk.com/grafantonkozlov
Телеграмм канал сообщества
https://t.me/grafantonkozlov
Архив эксклюзивного контента
https://boosty.to/antonkzv
Канал на Дзен
https://dzen.ru/grafantonkozlov
---------------------------------------------------
Бесплатный Хостинг и доменное имя
https://tilda.cc/?r=4159746
Мощная и надежная нейронная сеть Gerwin AI
https://t.me/GerwinPromoBot?start=referrer_3CKSERJX
GPTs — плагины и ассистенты для ChatGPT на русском языке
https://gptunnel.ru/?ref=Anton
---------------------------------------------------