Heram's Studyroom 자세히보기

CODES/백준

[ 백준 파이썬 문제풀이 ] 단계별로 풀어보기 / 1-10 입출력과 사칙연산 곱셈 #2588

Heram06 2025. 3. 21. 16:11
반응형

[ 백준 파이썬 문제풀이 ] 단계별로 풀어보기 / 1-10 입출력과 사칙연산  곱셈 #2588

 


 

문제 📢

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

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

 

 

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

 

나의 생각 🌟

이 문제는 예전에 살펴보았던 //(몫) 구하는 식과 %(나머지)를 구하는 식을 이용하여 수의 각 자릿 수를 구하는 문제인 것 같다.

 

예를 들어 x = 123이라 하자

 

x의 일의 자리 수 구하기

 

123 % 10

 

123을 10으로 나눈 뒤 나온 나머지가 일의 자리 수이다.

 

 

x의 십의 자리 수 구하기

 

123 // 10 = 12,

12 % 10 = 2

 

123을 10으로 나눈 뒤 나온 몫을 먼저 구하고

나온 몫을 10으로 나눠 나온 나머지가 십의 자리 수이다.

 

x의 백의 자리 수 구하기

 

123 // 100 = 1,

1 % 10 = 1

 

123을 100으로 나눈 뒤 몫을 먼저 구하고

나온 몫을 10으로 나눠 나온 나머지가 백의 자리 수이다.

 

예시는 세자리 수 여서 ( 몫값 % 10 ) 과정이 필요 없겠지만네자리 수 이상부턴 필요하다고 보면 된다.

내가 적은 답안 💡

one = int(input())
two = int(input())

three = one*(two%10)
four = one*((two%100)//10)
five = one*(two//100)
six = one*two

print(f'{three}\n{four}\n{five}\n{six}')

 

위 문제를 살펴보면 곱셈식이 있는데

 

A = (1)

B = (2)로 정의하고

A*B 를 구하면

 

(3)은 A*( B의 일의 자리 수 )

(4)는 A*( B의 십의 자리 수 )

(5)는 A*( B의 백의 자리 수 )

(6)은 A*B 이다

 

먼저 int(input())을 이용하여 (1)과 (2)를 각각 입력받고 숫자대로 one과 two로 정의하였다

 

그리고 방금 설명한 공식을 대입하여 (3) (4) (5) (6)을 차례대로 구한다음 각각 three, four, five, six로 정의하고 출력해주었다.

느낀점🎻

화이팅

 

백준 파이썬 백준파이썬 문제번호 단계별로 풀어보기 Hello World 코딩 해람씨의 공부방


 

이 블로그는 개발자를 꿈꾸는 사람이 열심히 공부하며 적어가는 공간입니다.

제 답안과 풀이가 다를 수 있지만, 정확한 정보를 위해 여러번 검토하며 적겠습니다!

반응형