[별 6개 일자로 찍기]
- 6번 반복하여 별 6개 찍음.
for i in range(6):
print("*")
[별 100개 가로로 찍기]
- print 함수에 end=""를 사용하여 default인 줄바꿈을 없애고, 가로로 별 100개 찍음.
for i in range(100):
print("*", end="")
[왼쪽 직각삼각형 만들기]
- 2가지 방법으로 만들어 봄.
- 첫번째는 python에서만 할 수 있는 문자 연산을 통해 작성함.
- 두번째는 이중for문을 사용하여 작성함.
for i in range(1, 7):
print("*"*i)
print("-------------------")
num = 7
for i in range(1, num):
for j in range(i):
print("*", end="")
print()
[왼쪽 직각삼각형 아래로 뒤집기]
- 2가지 방법으로 만들어 봄.
- 첫번째 방법은 문자 연산을 사용했고, range 함수 범위를 작아지게 설정하여 작성함.
- 두번째 방법은 이중for문을 사용하여 작성함.
num = 6
for i in range(num, 0, -1):
print("*"*i)
print("-------------------")
for i in range(num, 0, -1):
for j in range(i):
print("*", end="")
print()
[오른쪽 직각삼각형 만들기]
- " "은 num-i개 라는 규칙이 있고, *은 i개가 찍혀야 함.
num = 6
for i in range(1, num+1):
print(" "*(num-i) + "*"*i)
[오른쪽 직각삼각형 뒤집기]
- range를 작아지도록 설정하여 작성함.
num = 6
for i in range(num, 0, -1):
print(" "*(num-i) + "*"*i)
[트리모양 만들기]
- " "는 num-i 개, *은 2*i-1 개(홀수개)의 규칙을 가지고 있음.
num = 6
for i in range(1, num+1):
print(" "*(num-i) + "*"*(2*i-1))
[트리모양 뒤집기]
- 트리모양 만들기에서 range만 역순으로 수정하면 만들 수 있음.
num = 6
for i in range(num, 0, -1):
print(" "*(num-i) + "*"*(2*i-1))
[다이아몬드 만들기]
- 교수님께서 혼자 시간날 때 다이아몬드 만들기를 해보라고 하셨음.
- 교수님께서 개발할 때에는 유지보수를 위해 변수를 따로 선언하는 것이 좋다고 하셨음.
- 그래서 숫자 하나만 바꾸면 그에 맞는 다이아몬드가 만들어지는 코드를 작성함.
- num만 바꾸면 다양한 크기의 다이아몬드를 만들 수 있음.
- 다이아몬드의 중간 행을 기준으로 나누기 위해 mid 값을 먼저 구함.
- (다이아몬드의 윗쪽) mid 값보다 i가 작거나 같을 때, 트리모양 만들기와 똑같이 작성함.
- (다이아몬드의 아랫쪽) mid값보다 i가 클 때, 띄어쓰기와 별 그리고 중간값의 관계를 파악하여 코드를 작성함.
# 다이아몬드 만들기
num = 31
mid = (num+1)/2
mid = int(mid)
for i in range(1, num+1):
if i <= mid:
print(" "*(num - i-(mid-1)) + "*"*(2*i-1))
else:
print(" "*(i-mid) + "*"*(num-2*(i-mid)))
'Python' 카테고리의 다른 글
[2025.02.25] 튜플 자료형 (0) | 2025.02.25 |
---|---|
[2025.02.25] 리스트 자료형 (0) | 2025.02.25 |
[2025.02.24] for 문 (0) | 2025.02.24 |
[2025.02.24] while 문 (0) | 2025.02.24 |
[2025.02.21] if문 (0) | 2025.02.24 |