Algorithm

[백준_단계별로 풀어보기] 입출력과 사칙연산 2588번 곱셈 (JAVA)

민뭉아치 2020. 7. 2. 21:25

© 2020 All Rights Reserved.  주식회사 스타트링크

단계별로 풀어보기 > 입출력과 사직연산 > 1-11단계 2588번 곱셈


 

* 사용 언어 : JAVA

* 소스 코드에 제가 직접 작성한 것이기 때문에 정확한 답이 아닐 수 있습니다.

* 문제풀이에 대한 피드백은 언제나 환영입니다 : )

 

백준 2588번 곱셈

* 아래의 주소로 이동하시면 바로 문제를 푸실 수 있어요. 

https://www.acmicpc.net/problem/2588

 

2588번: 곱셈

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

www.acmicpc.net


1. 문제

[백준] 2588번 곱셈

2. 코드

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int a = 0;
        int b = 0; 
        
        a = scan.nextInt();
        b = scan.nextInt();
        
        System.out.println(a*(b%10));
        System.out.println(a*((b%100)/10));
        System.out.println(a*(b/100));
        System.out.println(a*b);
    }
}

 

3. 풀이

이번 문제는 세 자리 수×세 자리 수의 과정을 구하고 결과값을 구하는 문제이다.

일단 먼저 자연수가 주어지니 정수형으로 입력받아 정수형 변수에다가 저장해준다.

첫번째 값은 a, 두번째 값은 b에 담겨있다.

문제에서 (3)에 해당하는 부분을 풀어보면 a의 세 자리 자연수와 b의 일의 자리와 곱으로 이루어진다. 세 자리 수의 일의 자리를 구하기 위해서는 값은 10으로 나눈 나머지를 구해주면 일의 자리 값을 구할 수 있다. 

(4)에 해당하는 부분을 보면 a의 세 자리 자연수와 b의 십의 자리와 곱으로 이루어진다. 세 자리 수의 십의 자리를 구하기 위해서는 여러가지 방법이 있다. 나는 먼저 100으로 나눈 나머지값을 구해 두 자리 수의 값을 구해준다 그중 십의 자리 수는 10의로 나누었을 때 몫이 된다. 

세 자리 수의 백의 자리수는 100으로 나누었을 때 몫이 백의 자리수의 값이 된다.