#python #while-loop #nested-loops
Вопрос:
Я пытаюсь создать этот шаблон с помощью цикла while:
* * * *
* * *
* *
*
Это программа, которую я придумал, но она продолжает печатать звезды без повторения:
i = 4
while i > 0:
j = 1
while j < 4 - 1:
print(end = " ")
k = 0
while k < i:
print("*",end = " ")
print()
i = i - 1
j = j 1
k = k 1
Не могли бы вы, пожалуйста, сообщить мне, что не так с моей программой?
Комментарии:
1. Вы не изменяете
j
внутри второго цикла, поэтому условие всегдаTrue
выполняется . Точно так же третий цикл бесконечен.2. Ты никогда не выйдешь из «пока к
Ответ №1:
Вы никогда не обновляете j во внутреннем цикле while, поэтому j всегда То же самое верно и в отношении К.
В качестве альтернативы вы можете создать шаблон только с одной петлей с чем-то подобным
start_i = 4
i = start_i
while i > 0:
print(" " * (start_i - i) "* " * i)
i -= 1