파이썬 구구단 3단씩 출력 - paisseon gugudan 3danssig chullyeog

파이썬 Python 코딩 훈련 문제 하나 풀이하겠습니다.

구구단은 루프(반복문)를 사용해서 아주 쉽게 표현할 수 있습니다.

일반적으로 세로로 구구단을 출력하면 아주 쉽습니다.

num = int(input("단을 입력하시오 : ")) for i in range(1, num+1, 1): for j in range(1, 10, 1): print("%2d X %2d = %3d" % (i, j, i*j)) print("") # 결과 단을 입력하시오 : 3 1 X 1 = 1 1 X 2 = 2 1 X 3 = 3 1 X 4 = 4 1 X 5 = 5 1 X 6 = 6 1 X 7 = 7 1 X 8 = 8 1 X 9 = 9 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 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

그런데, 가로로 나열하는 방법으로 과제를 내줍니다.

그러면 이중루프 순서가 바뀌게 됩니다.

num = int(input("단을 입력하시오 : ")) for i in range(1, 10, 1): for j in range(1, num+1, 1): print("%2d X %2d = %3d" % (j, i, j*i), end=" ") print("") print("") # 결과 단을 입력하시오 : 3 1 X 1 = 1 2 X 1 = 2 3 X 1 = 3 1 X 2 = 2 2 X 2 = 4 3 X 2 = 6 1 X 3 = 3 2 X 3 = 6 3 X 3 = 9 1 X 4 = 4 2 X 4 = 8 3 X 4 = 12 1 X 5 = 5 2 X 5 = 10 3 X 5 = 15 1 X 6 = 6 2 X 6 = 12 3 X 6 = 18 1 X 7 = 7 2 X 7 = 14 3 X 7 = 21 1 X 8 = 8 2 X 8 = 16 3 X 8 = 24 1 X 9 = 9 2 X 9 = 18 3 X 9 = 27

좀 더 보기가 좋지요?

그런데 여기에서 조금 더 조건을 추가합니다.

4단씩 또는 5단씩 보여주는 조건이 추가됩니다.

그러면 반복문 1개가 더 추가됩니다.

3중으로 반복문을 사용해야 합니다.

import math num = int(input("단을 입력하시오 : ")) grp = math.ceil(num/4) for h in range(0, grp, 1): for i in range(1, 10, 1): start = h*4 + 1 end = start + 3 if num < end: end = num for j in range(start, end+1, 1): print("%2d X %2d = %3d" % (j, i, j*i), end=" ") print("") print("") # 결과 단을 입력하시오 : 7 1 X 1 = 1 2 X 1 = 2 3 X 1 = 3 4 X 1 = 4 1 X 2 = 2 2 X 2 = 4 3 X 2 = 6 4 X 2 = 8 1 X 3 = 3 2 X 3 = 6 3 X 3 = 9 4 X 3 = 12 1 X 4 = 4 2 X 4 = 8 3 X 4 = 12 4 X 4 = 16 1 X 5 = 5 2 X 5 = 10 3 X 5 = 15 4 X 5 = 20 1 X 6 = 6 2 X 6 = 12 3 X 6 = 18 4 X 6 = 24 1 X 7 = 7 2 X 7 = 14 3 X 7 = 21 4 X 7 = 28 1 X 8 = 8 2 X 8 = 16 3 X 8 = 24 4 X 8 = 32 1 X 9 = 9 2 X 9 = 18 3 X 9 = 27 4 X 9 = 36 5 X 1 = 5 6 X 1 = 6 7 X 1 = 7 5 X 2 = 10 6 X 2 = 12 7 X 2 = 14 5 X 3 = 15 6 X 3 = 18 7 X 3 = 21 5 X 4 = 20 6 X 4 = 24 7 X 4 = 28 5 X 5 = 25 6 X 5 = 30 7 X 5 = 35 5 X 6 = 30 6 X 6 = 36 7 X 6 = 42 5 X 7 = 35 6 X 7 = 42 7 X 7 = 49 5 X 8 = 40 6 X 8 = 48 7 X 8 = 56 5 X 9 = 45 6 X 9 = 54 7 X 9 = 63

간단히 설명을 드리면,

4단씩 끊어서 구구단을 출력하기 때문에 4단씩 보여주는 것이 몇번인지 계산을 해야 합니다.

입력한 단수를 4로 나눠서 나온 값을 올림 처리하면 됩니다.

4단인 경우 4로 나눠서 1로 떨어지기 때문에 크게 1번만 반복하면 되며,

7단인 경우 1.75이고, 올림 처리하면 2 입니다.

크게 2번 반복하며 됩니다.

그리고 크게 반복할 때 시작하는 단수를 계산하고, 단수가 시작단수+3 보다 작으면 종료 단수를 변경합니다.

코드를 보면 이해가 더 빠를거예요.

이중 루프, 삼중 루프 연습용으로 딱 좋은 예제인것 같습니다.

조금이나마 도움이 되길 바라겠습니다.

과제를 하면서 코딩, 문제풀이 등 도움이 필요하시면 아래 엑스퍼트 상담 신청하세요.

//m.kin.naver.com/mobile/expert/product/detail?storeId=100001757&productId=100003257

#파이썬 #Python #코딩 #파이썬코딩 #구구단 #구구단가로 #구구단출력 #4단씩출력 #루프 #반복문 #for #삼중루프

Toplist

최신 우편물

태그