파이썬 프로그래밍
구구단 2~9단 출력해보기.
살짝가식
2021. 9. 13. 20:39
구구단 2~9단 출력해보기¶
for문¶
파이썬의 직관적인 특징을 가장 잘 대변해 주는 것이 바로 이 for문이다. while문과 비슷한 반복문인 for문은 매우 유용하고 문장 구조가 한눈에 쏙 들어 온다는 장점이 있다.
앞서 말한것처럼 for문은 숫자 리스트를 자동으로 만들어주는 range함수와 함께 사용하는 경우가 많다.
range(10)은 0부터 10 미만의 숫자를 포함하는 range 객체를 만들어준다.
In [15]:
a = list(range(10))
a
Out[15]:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
In [16]:
a_1 = list(range(2,10))
a_1
Out[16]:
[2, 3, 4, 5, 6, 7, 8, 9]
2~9 단을 출력하기위해 range(2,10)를 입력하였다. 2이상 10미만의 숫자가 나오는 것을 확인할수 있다.
이제 포문으로 하나씩하니씩 만들어보자.
In [30]:
for i in range(2,10):
k = 4*i
print("%d * %d = %d" % (4, i, k))
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20
4 * 6 = 24
4 * 7 = 28
4 * 8 = 32
4 * 9 = 36
위에 포문을 이용해 i=rnage(2,10)을 4*i 를 해주었을때 4가 2~9까지 곱해져 나오는 것을 볼수있다.¶
자 이제 2중 포문을 하기전 구구단은 2단부터 9단까지 1~9까지 곱해져 나오는것을 알것이다.
그럼 1~9 까지 설정도 한번 미리보자.
In [21]:
a_2 = list(range(1,10))
a_2
Out[21]:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
이제 2단,3단.....9단을 하나씩 하나씩 1~9까지 곱해서 출력해보자.
In [26]:
for i in range(2,10): # (1)번 for문 i는 2~9의 숫자
print("====%d단===="%(i))
for j in range(1,10): # (2)번 for문 j는 1~9의 숫자
k= i*j # 결과
print("%d X %d = %d" % (i,j,k))
print()
====2단====
2 X 1 = 2
2 X 2 = 4
2 X 3 = 6
2 X 4 = 8
2 X 5 = 10
2 X 6 = 12
2 X 7 = 14
2 X 8 = 16
2 X 9 = 18
====3단====
3 X 1 = 3
3 X 2 = 6
3 X 3 = 9
3 X 4 = 12
3 X 5 = 15
3 X 6 = 18
3 X 7 = 21
3 X 8 = 24
3 X 9 = 27
====4단====
4 X 1 = 4
4 X 2 = 8
4 X 3 = 12
4 X 4 = 16
4 X 5 = 20
4 X 6 = 24
4 X 7 = 28
4 X 8 = 32
4 X 9 = 36
====5단====
5 X 1 = 5
5 X 2 = 10
5 X 3 = 15
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35
5 X 8 = 40
5 X 9 = 45
====6단====
6 X 1 = 6
6 X 2 = 12
6 X 3 = 18
6 X 4 = 24
6 X 5 = 30
6 X 6 = 36
6 X 7 = 42
6 X 8 = 48
6 X 9 = 54
====7단====
7 X 1 = 7
7 X 2 = 14
7 X 3 = 21
7 X 4 = 28
7 X 5 = 35
7 X 6 = 42
7 X 7 = 49
7 X 8 = 56
7 X 9 = 63
====8단====
8 X 1 = 8
8 X 2 = 16
8 X 3 = 24
8 X 4 = 32
8 X 5 = 40
8 X 6 = 48
8 X 7 = 56
8 X 8 = 64
8 X 9 = 72
====9단====
9 X 1 = 9
9 X 2 = 18
9 X 3 = 27
9 X 4 = 36
9 X 5 = 45
9 X 6 = 54
9 X 7 = 63
9 X 8 = 72
9 X 9 = 81
위를 보면 for문을 두 번 사용했다. (1)번 for문에서 2부터 9까지의 숫자 (range(2,10))가 차례로 i에 대입된다. i가 처음 2일 때 (2)번 for문을 만난다. (2)번 for문에서 1부터 9까지의 숫자 (range(1,10))가 j에 대입되고 다음 k = i*j를 수행한다.
-출처 : "Do it! 점프 투 파이썬"
쉽게 풀이하자면 (1)번 for문 2가 (2)번 for문을 만나 1~9가지 곱해지고 9까지 완료가되면 다시 (1)번 for문으로 넘어가 3으로 다시 (2)번포문으로 넘어간다. 이걸 9까지 반복한다는 것이다.