다중 반복문3

2022. 9. 25. 20:06파이썬(Python)

반응형

1. 순서 있는 숫자 출력

 

Q) 행이 반복되는 숫자

예시)

>> 3

123
123
123
>> 4

1234
1234
1234
1234

 

n=int(input())

for i in range(n):
    for j in range(1,n+1):
        print(j,end='')
    print()

Q) 열이 반복되는 숫자

예시)

>> 3

111
222
333
>> 4

1111
2222
3333
4444

 

n=int(input())

for i in range(n):
    for j in range(n):
        print(i+1,end='')
    print()

Q) 숫자가 감소하는 정사각형

- 자연수 n을 입력.

- n개의 행과 각 행에 n, n-1,... , 2, 1 수를 출력

 

예시)

>> 4

4 3 2 1
4 3 2 1
4 3 2 1
4 3 2 1

 

n=int(input())

for i in range(n):
    for j in range(n,0,-1):
        print(j,end=' ')
    print()

2. 수학적 규칙에 따른 숫자 출력

 

Q) n*m개의 배수 출력

- 자연수 n, m 입력

- n개의 행과 각각의 행에 맞는 배수를 m개 출력

 

예시)

>> 3 4

1 2 3 4 
2 4 6 8
3 6 9 12

 

inp=input().split()

n,m=int(inp[0]),int(inp[1])
for i in range(1,n+1):
    for j in range(i,i*(m+1),i):
        print(j,end=' ')
    print()

Q) 정사각형 - 거꾸로 배수

예시)

>> 4

4 3 2 1
8 6 4 2
12 9 6 3
16 12 8 4
>> 5

5 4 3 2 1 
10 8 6 4 2
15 12 9 6 3
20 16 12 8 4
25 20 15 10 5

 

n=int(input())

for i in range(1,n+1):
    for j in range(n*i,n*i//n-1,-i):
        print(j,end=' ')
    print()

3. cnt(개수 변수)를 활용한 숫자 출력

123
456
789

위와 같은 내용을 출력하기 위해서는?

- 숫자가 왼쪽 위에서 오른쪽 아래까지 오는데 1 증가.

- for의 i, j에 대한 규칙이 아닌 cnt를 1씩 증가하여 해결

 

cnt=1
for i in range(3):
    for j in range(3):
        print(cnt,end='')
        cnt+=1
    print()

Q) 1-9 정사각형 출력

- 자연수 n을 입력. 1부터 9의 수가 정사각형 모양으로 출력

- 9 다음에는 1이 출력

 

예시)

>> 4

1 2 3 4
5 6 7 8
9 1 2 3
4 5 6 7

 

n=int(input())
cnt=1

for i in range(n):
    for j in range(n):
        print(cnt,end=' ')
        cnt+=1
        if cnt==10:
            cnt=1
    print()

Q) 홀수 정사각형 출력

- 자연수 n을 입력.

- n*n의 정사각형. 각 수는 10 이하의 홀수

 

예시)

>> 4

1 3 5 7
9 1 3 5
7 9 1 3
5 7 9 1

 

n=int(input())

cnt=1
for i in range(n):
    for j in range(n):
        print(cnt,end=' ')
        cnt+=2
        if cnt==11:
            cnt=1
    print()

4. 구구단

- 기본적인 구구단

n=int(input())

for i in range(1,10):
    print(f'{n} * {i} = {n*i}')

결과

>> 5
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45

Q) 구구단 만들기

- 두 수 a, b를 입력

1행 2단
2행 4단
3행 6단
4행 8단

- a부터 b까지 각 행에 해당하는 수식을 출력

 

예시)

>> 2 5
2*2=4 / 3*2=6 / 4*2=8 / 5*2=10 
2*4=8 / 3*4=12 / 4*4=16 / 5*4=20
2*6=12 / 3*6=18 / 4*6=24 / 5*6=30
2*8=16 / 3*8=24 / 4*8=32 / 5*8=40

 

inp=input().split()
a,b=int(inp[0]),int(inp[1])

for i in range(2,10,2):
    for j in range(a,b+1):
        print(f'{j}*{i}={j*i}',end=' ')
        if j==b: continue
        print('/',end=' ')
    print()

 

 

 

'파이썬(Python)' 카테고리의 다른 글

다중 반복문5 (+문자열)  (0) 2022.09.30
다중 반복문4  (0) 2022.09.29
다중 반복문2  (0) 2022.09.24
다중 반복문1  (0) 2022.09.24
반복문 활용4  (0) 2022.09.22