[백준/2588번] 곱셈

냥치기소녀
|2022. 5. 1. 17:43

매우 간단!!

 

문제


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



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

 

입력

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

출력

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

 

예제

입력 출력
472
385
2360
3776
1416
181720

 

문제풀이(JAVA)

import java.util.Scanner;

public class Main{
    public static void main(String args[]){
         Scanner sc = new Scanner(System.in);
	        
	     int num1 = sc.nextInt();
	     int num2 = sc.nextInt();
	       
	     int output[] = new int[4];
	      
	     output[0] = num1 * (num2%10);
	     output[1] = num1 * (num2%100/10);
	     output[2] = num1 * (num2/100);
	     output[3] = num1 * num2;
	        
	     for(int i =0; i < 4; i++){
	         System.out.println(output[i]);
	     }
	       
	     sc.close();
    }
}

 

< 추가 설명 (예제) >

1) 첫 번째 출력 : num1 * (num2%10); 

 - (3)에 들어갈 값은 472 x 5의 연산 결과이다. 즉, 첫 번째 입력값과 두 번째 입력값의 일의 자리 수를 곱하는 것       이다. 따라서 일의 자리를 구하는 연산인 (두 번째 입력값%10)을 첫 번째 입력값에 곱해주었다.

 => 385%10 = 5

 

2) 두 번째 출력 : num1 * (num2%100/10); 

 - (4)에 들어갈 값은 472 x 8의 연산 결과이다. 즉, 첫 번째 입력값과 두 번째 입력값의 십의 자리 수를 곱하는 것       이다. 따라서 십의 자리를 구하는 연산인 (두 번째 입력값%100/10)을 첫 번째 입력값에 곱해주었다.

 => 385%100 = 85, 85/10 = 8

 

3) 세 번째 출력 : num1 * (num2/100); 

 - (5)에 들어갈 값은 472 x 3의 연산 결과이다. 즉, 첫 번째 입력값과 두 번째 입력값의 백의 자리 수를 곱하는 것       이다. 따라서 백의 자리를 구하는 연산인 (두 번째 입력값/100)을 첫 번째 입력값에 곱해주었다.

 => 385/100 = 3

 

4) 네 번째 출력 : num1 * num2;

 - (6)에 들어갈 값은 472 x 385의 연산 결과이다.