Выводит верный треугольник, но под не верное число

Вывести указанные треугольники получается. Но вопрос в следующем. От 1 до 5 ясно ,выводит нужную фигуру. Но когда вводишь любое число больше 5,все равно выводит треугольники из 5 звезд. ПРИМЕРЫ ТРЕУГОЛЬНИКОВ

print('Задание № 1')
N = int(input('Введите ширину треугольника '))
for N in range(5,0,-1):
    print("*" * N)



print('Задание № 2')

N = int(input('Введите ширину треугольника '))
for N in range(0, 6, 1):
        print("*" * N)

print('Задание № 3')

N = int(input('Введите ширину треугольника '))
for N in range(5,0,-1):
    print(('*' * N).rjust(5))


print('Задание № 4')

N = int(input('Введите ширину треугольника '))
for N in range(0, 6, 1):
        print(("*" * N).rjust(5))

И вот еще чуть наброски с While...

print('Задание № 1')

N = int(input('Введите ширину треугольника '))
c = 1
while c < N+1:
    print ('*' * c)
    c += 1
    if N >=6:
        break

print('Задание № 2')

N = int(input('Введите ширину треугольника '))
c = 5
while c >= N:
    print('*' * N)
    c -=1
    if N >=1:
        break

Ответы (1 шт):

Автор решения: Mr.Framon

Функция range()позволяет вам генерировать ряд чисел в рамках заданного диапазона, ваша ошибка в том, что вы в каждой задаче указываете один и тот же диапазон. Вам нужно переменную N(Ширину треугольника), указать в качестве диапазона функции range()

print('Задание № 1')
N = int(input('Введите ширину треугольника '))
for i in range(N, 0, -1):
    print("*" * i)

print('Задание № 2')
N = int(input('Введите ширину треугольника '))
for i in range(N+1):
    print("*" * i)

print('Задание № 3')
N = int(input('Введите ширину треугольника '))
for i in range(N,0, -1):
    print(("*" * i).rjust(N))

print('Задание № 4')
N = int(input('Введите ширину треугольника '))
for i in range(N+1):
    print(("*" * i).rjust(N))
→ Ссылка