Сделал 18 задание
This commit is contained in:
parent
cd8959a512
commit
8dd33d4e76
65
lesson.18.py
Normal file
65
lesson.18.py
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
''' ****** Задание 18 из 20 Параграф 2.4 *********
|
||||||
|
* Праздники приближаются, и коллеги великого математика снова хотят его порадовать.
|
||||||
|
На этот раз — с помощью ещё более красивых математических ёлок!
|
||||||
|
|
||||||
|
Вас снова зовут в качестве главного креативного программиста.
|
||||||
|
Нужно сделать так, чтобы каждая строка ёлки была аккуратно выровнена по центру — строго, симметрично, празднично.
|
||||||
|
|
||||||
|
Формат ввода
|
||||||
|
Вводится одно натуральное число — количество чисел в математической ёлке.
|
||||||
|
|
||||||
|
Формат вывода
|
||||||
|
Требуемая новогодня ёлка.
|
||||||
|
|
||||||
|
Примечание
|
||||||
|
Гарантируется, что последняя строка будет самой длинной.
|
||||||
|
Не забывайте про существование f-строк.
|
||||||
|
|
||||||
|
|
||||||
|
Пример 1
|
||||||
|
Ввод
|
||||||
|
|
||||||
|
14
|
||||||
|
Вывод
|
||||||
|
|
||||||
|
1
|
||||||
|
2 3
|
||||||
|
4 5 6
|
||||||
|
7 8 9 10
|
||||||
|
11 12 13 14
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
max_number = int(input())
|
||||||
|
|
||||||
|
row = 1
|
||||||
|
col = 1
|
||||||
|
number = 1
|
||||||
|
width = 0
|
||||||
|
while number <= max_number:
|
||||||
|
row_value = ''
|
||||||
|
while col <= row and number <= max_number:
|
||||||
|
row_value += str(number) + (' ' if col < row and number < max_number else '')
|
||||||
|
col += 1
|
||||||
|
number += 1
|
||||||
|
if len(row_value) > width:
|
||||||
|
width = len(row_value)
|
||||||
|
row += 1
|
||||||
|
col = 1
|
||||||
|
|
||||||
|
row = 1
|
||||||
|
col = 1
|
||||||
|
number = 1
|
||||||
|
while number <= max_number:
|
||||||
|
row_value = ''
|
||||||
|
while col <= row and number <= max_number:
|
||||||
|
row_value += str(number) + (' ' if col < row and number < max_number else '')
|
||||||
|
col += 1
|
||||||
|
number += 1
|
||||||
|
print(f'{row_value:^{width}}')
|
||||||
|
row += 1
|
||||||
|
col = 1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in a new issue