728x90

문제

(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.

(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.

출력

첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.

예제 입력 1 복사

472
385

예제 출력 1 복사

2360
3776
1416
181720

A = int(input())
B = input()

print(A*int(B[2]))
print(A*int(B[1]))
print(A*int(B[0]))
print(A*int(B))

(1) (2)

문자열 입력 함수 input()으로 A와 B에 저장할 정수값을 (문자열로) 입력받아 A만 정수형으로 변환해주었고 B는 문자열 형태로 남겨둔다.

 

왜냐, 문자열은 문자열을 구성하는 문자에 접근할 수 있다. 따라서 세자리 곱셈의 중간과정에서 B의 각 자리수를 곱하여 더하는 과정을 표현할 수 있다.

 

(3) (4) (5)

따라서 int(B[2])는 세자리 정수 B의 일의 자리 숫자,

int(B[1])는 세자리 정수 B의 십의 자리 숫자,

int(B[0])은 세자리 정수 B의 백의 자리 숫자가 된다.

 

(6)

최종 결과값

728x90

+ Recent posts