Обратная лесенка в Python
Только начинаю изучать Python. Сделала задание: "По данному натуральному n ≤ 9 выведите лесенку из n ступенек, i-я ступенька состоит из чисел от 1 до i без пробелов". Код:
n=int(input())
y=''
for i in range(1, n+1):
y=y+str(i)
print(y)
Как изменить код, чтобы лесенка была в обратном направлении? Например:
1234
123
12
1
Ответы (4 шт):
Автор решения: Даниил Чижевский
→ Ссылка
n = int(input())
ladder = ''.join([str(x) for x in range(1, n + 1)])
while n > 0:
print(ladder)
ladder = ladder[:-1]
n -= 1
Автор решения: MrBlackLord
→ Ссылка
К примеру, использовать цикл с обратным шагом, а в нем вложенный цикл:
n = int(input())
for i in range(n, 0, -1):
for j in range(1, i + 1):
print(j, end='')
print()
Автор решения: S. Nick
→ Ссылка
как вариант:
n = int(input())
y = ''
for i in range(1, n+1):
y = y + str(i)
print(y)
print()
_list = [ str(i) for i in range(1, n+1) ]
for i in range(n):
print(''.join(_list[:n-i]))
print()
_list = [ str(i) for i in range(n, 0, -1) ]
for i in range(n):
print(''.join(_list[:n-i]))
Автор решения: Будни программиста
→ Ссылка
n=int(7)
y=''
for i in range(1, n+1):
y=y+str(i)
print(y[::-1])
[:: - 1] - отображает данные наоборот