Developer/Baekjoon
[Baekjoon] 2588. 곱셈 (Python/파이썬)
moolife
2023. 1. 18. 03:42
▶ 분류
사칙연산(arithmetic), 수학(math)
▶ 문제 설명
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.

(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
▶ 입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
▶ 출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
▶ Code
a=int(input())
b=int(input())
out1 = a*((b%100)%10)
out2 = a*((b%100)//10)
out3 = a*(b//100)
result = a*b
print(out1, out2, out3, result, sep='\n')
▶ Point
a와 b를 int 형식으로 input 받고, out1은 a와 b의 일의 자리 수를 곱한 값, out2은 a와 b의 십의 자리 수를 곱한 값, out3은 a와 b의 백의 자리 수를 곱한 값으로 설정한다.
out1에서 b의 일의 자리 수는 '(b%100)%10' 으로 'b를 100으로 나눈 나머지를 10으로 나눈 나머지' 로 생각하여 이에 a를 곱하여 구한다.
out2에서 b의 십의 자리 수는 '(b%100)//10' 으로 'b를 100으로 나눈 나머지를 10으로 나눈 몫' 로 생각하여 이에 a를 곱하여 구한다.
out3에서 b의 백의 자리 수는 'b//100' 으로 'b를 100으로 나눈 몫' 로 생각하여 이에 a를 곱하여 구한다.
이후, out1, out2, out3, result를 '\n'을 이용하여 줄을 나누어 print 함수로 출력한다.