지난 포스팅
에서 크리스마스 트리를 만들어봤다!
그런데, 반복문을 사용하기 전이라서 무려 13개의 print 함수를 만드는 노동을 했다.
for 문과 while문을 배운 이상, 크리스마스 트리를 더 이상 단순하게 만들 수 없어서 번에는 for문을 이용해서 간결한 코드를 작성해보았다.
tree = input('Enter "*" for tree: ')
floor = input('Enter "#" for floor: ')
for i in [1,3,5,7,9,11,13]:
print((tree*i).center(30))
for j in [3,3,3]:
print((floor*j).center(30))
코드를 만들고 저번보다 더 큰 트리를 쉽게 만들어낼 수 있을것이라고 기대하고 대왕 트리를 출력하려고 보니, 리스트 부분에 숫자를 또 하나하나 추가해야 한다는 것을 깨달았다. 그래서 range의 특성을 이용해서 다시 한번 코드를 짜보았다.
tree = input('Enter "*" for tree: ')
floor = input('Enter "#" for floor: ')
for i in range(1,14,2):
print((tree*i).center(30))
for i in range(3):
print((floor*3).center(30))
따단~ 이렇게 숫자 단 3개만 수정하면 원하는 트리를 만들어낼 수 있게 되었다.✨
기념으로, 초대왕 트리를 만들었다. 두 번째 코드 포맷에서 숫자들만 수정해주었다.
tree = input('Enter "*" for tree: ')
floor = input('Enter "#" for floor: ')
for i in range(1,100,2):
print((tree*i).center(100))
for i in range(30):
print((floor*10).center(100))
여전히 아쉬운 점
그런데 여전히 아쉬운 점이 존재한다.
1) 크리스마스 트리인만큼, 중간중간 장식이 들어가면 더 예쁠 것 같다.
2) 크리스마스 크기가 커질수록, center도 더 크게 조정해줘야 한다. 자동으로 크기에 맞게 center도 조정되는 코드를 만들고 싶다. 그런 코드가 반드시 존재할 거라고 생각한다!