728x90
반응형
for문으로 코드
n = int(input('1~9 호수 입력 : ')) # 입력 받기. 입력 문자열을 정수로 변환
x = int(n/2) + 1 # 중간 위치 찾기
for i in range(1, 2*x): # 반복
if i <= x: # i가 중간 위치(x) 작거나 같으면(점점 커지는 그림)
for j in range(x-i): # 공백으로 채움
print(' ', end='')
for j in range(2*i-1): # 숫자로 채움
print(str(i),end='')
print()
else: # i가 중간 위치(x) 크면(점점 작아지는 그림)
for j in range(i-x):
print(' ', end='')
for j in range((2*x-i)*2-1):
print(str(i),end='')
print()
간량화된 코드
n = int(input('1~9 호수 입력 : ')) # 입력 받기. 입력 문자열을 정수로 변환
x = int(n/2) + 1 # 중간 위치 찾기
for i in range(1, 2*x): # 반복
if i <= x: # i가 중간 위치(x) 작거나 같으면(점점 커지는 그림)
print(' '*(x-i),end='')
print(str(i)*(2*i-1))
else: # i가 중간 위치(x) 크면(점점 작아지는 그림)
print(' '*(i-x), end='')
print(str(i)*((2*x-i)*2-1))
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문제 : pandas Dataframe의 Column 값 수정 (0) | 2022.11.28 |
---|---|
[파이썬] 문제 : 정수 n을 입력 받고 숫자 삼각형 출력 (정보올림피아드 문제) (0) | 2022.11.28 |
[파이썬] 터틀 정사각형 그리기 (1) | 2022.11.28 |
[파이썬] 문제 : 영어 대소문자, 숫자로 plus 정수 n 만큼 증가한 문자열 (0) | 2022.11.28 |
[파이썬] 문제 : 100 이하 양의 정수 중 5의 배수, 10의 배수 리스트 (1) | 2022.11.28 |
댓글