저번 게시물 중첩 반복문으로 만든 별 계단에 이어서
별 피라미드 만들기 도전!
가로 17 세로(높이) 9인 피라미드 만들기!
내가 짠 코드
for i in range(1, 10):
for j in range(9, i, -1): #역반복문
print(" ", end="")
#위에서부터 높은 반복횟수로 빈칸 만들기
for z in range(0, 2*i-1): #반복문
print("*", end="")
#위에서부터 낮은 반복횟수로 별 채우기
#피라미드 형태에서는 홀수인 별이 2개씩 증가해야 함(2*i-1)
print()
주석으로 간단한 설명을 달아놓았음
주의해야 할 점은
내부에 for문이 2개가 삽입되어야 하고
1개는 빈칸을 넣기 위한 역반복문이고
나머지 1개는 *별을 넣기위한 반복문이다
역반복문의 매개변수는 피라미드 높이인 9부터 시작해야
피라미드의 바닥에 빈칸이 없습니다!
이건 개인이 만들고 싶은 피라미드 모양에 따라서 조절하면 됌
역반복문이니 range()의 3번째 매개변수는 -1이 되어야합니다.
print함수에 기본값으로 end="\n" 줄바꿈이 설정되어 있으니
그것을 ""빈칸으로 설정해줍니다.
별까지 한 줄에 넣고 줄바꿈을 해줘야합니다.
다음 별을 넣는 for문에서는 매개변수 설정을 주의해야함
새로운 반복변수인 z를 활용해
for z in range(0, 2*n-1)
이렇게 반복문을 설정해줍니다.
두번째 매개변수가 2*n-1인 이유는
별이 줄이 바뀜에 따라 2개씩 증가해야하고 별의 수는 홀수이어야
피라미드 모양이 나옵니다
코드 실행 결과
뿌듯 ><