1. 행, 열에 따라 숫자를 다르게 출력
Q) 좌우 반복 출력
- 1~9 숫자인 n을 입력하여 n개의 행에 숫자를 좌우로 반복하여 출력
예시)
>> 4
1234
4321
1234
4321
>> 5
12345
54321
12345
54321
12345
● 문제 접근
- 홀수 행 : 1부터 n 출력
- 짝수 행 : n부터 1 출력
n=int(input())
for i in range(1,n+1):
if i%2==1:
for j in range(1,n+1):
print(j,end='')
else:
for j in range(n,0,-1):
print(j,end='')
print()
Q) 상하 반복 출력
- 1~9 숫자인 n을 입력하여 상하로 반복하여 출력
>> 4
1414
2323
3232
4141
>> 5
15151
24242
33333
42424
51515
● 문제 접근
- 각 행에는 n개의 수가 있다.
- m번째 행의 홀수 번째 수는 m
- m번째 행의 짝수 번째 수는 n-m+1
n=int(input())
for i in range(1,n+1):
for j in range(1,n+1):
if j%2==1:
print(i,end='')
else:
print(n-i+1,end='')
print()
Q) 좌우 지그재그 출력
- 자연수 n을 입력.
- 1부터 n*n까지 n개의 행으로 지그재그로 출력.
예시)
>> 4
1 2 3 4
8 7 6 5
9 10 11 12
16 15 14 13
● 문제 접근
- 홀수 번째 행은 1 증가하며 출력
- 짝수 번째 행은 1 감소하며 출력
- m번째 행의 n번째 수에서 m+1번째 행의 1번째 수는 n 증가
n=int(input())
cnt=1
for i in range(1,n+1):
for j in range(1,n+1):
if i%2==1:
print(cnt,end=' ')
if j==n:
cnt+=n
else:
cnt+=1
else:
print(cnt,end=' ')
if j==n:
cnt+=n
else:
cnt-=1
print()
2. 모양에 맞는 숫자 출력
Q) 숫자 피라미드
- 자연수 n을 입력
- n개의 행을 가진 숫자 출력
- 행이 증가할수록 열도 증가. 숫자도 증가
예시)
>> 4
1
2 3
4 5 6
7 8 9 10
● 문제 접근
- 반복문의 변수 i 값에 따라 열을 결정하는 변수 j의 범위가 달라짐
n=int(input())
cnt=1
for i in range(1,n+1):
for j in range(i):
print(cnt,end=' ')
cnt+=1
print()
Q) 숫자 피라미드 2
- 역 직각 삼각형으로 출력
- 1~9 순으로 출력. 9 다음은 1로 돌아와 출력
예시)
>> 4
1 2 3 4
5 6 7
8 9
1
● 문제 접근
- 숫자를 출력하는 cnt 변수 (초기값 1), 공백을 설정하는 blank 변수 (초기값 0) 2개를 정의한다.
- n개의 행과 n개의 열을 출력.
- 행이 1 증가하면서 blank도 1 증가
- 반복문을 통해 변수가 blank보다 작으면 공백 출력
- blank보다 크거나 같으면 cnt를 출력.
- 출력 후 1 증가. cnt가 10이 되면 1로 초기화
n=int(input())
cnt=1
blank=0
for i in range(n):
for j in range(n):
if j<blank:
print(' ',end=' ')
else:
print(cnt,end=' ')
cnt+=1
if cnt==10:
cnt=1
blank+=1
print()
'파이썬(Python)' 카테고리의 다른 글
리스트 (list) (0) | 2022.10.01 |
---|---|
다중 반복문5 (+문자열) (0) | 2022.09.30 |
다중 반복문3 (0) | 2022.09.25 |
다중 반복문2 (0) | 2022.09.24 |
다중 반복문1 (0) | 2022.09.24 |