백준 알고리즘 1단계 입출력과 사칙연산 2588번 문제입니다.
Q. (세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다. (1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
472 - (1)
x 385 - (2)
-------------
2360 - (3)
3776 - (4)
1416 - (5)
-------------
181720 - (6)
풀이
두번째로 입력받은 숫자의 각 자릿수들을 구해 연산을 하는 방향으로 접근했다.
1의 자리 : 10으로 나눈 나머지값 ☞ 385 % 10 = 5
10의 자리 : 10으로 나눈 값에서 다시 10으로 나눈 나머지값 ☞ (385 / 10) % 10 = 8
100의 자리 : 100으로 나눈값 ☞ 385 / 100 = 3
소스
package com.baek.algo;
import java.util.Scanner;
public class Q2588 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int d = a * (b % 10);
int e = a * ((b / 10) % 10);
int f = a * (b / 100);
int tot = a * b;
System.out.println(d);
System.out.println(e);
System.out.println(f);
System.out.println(tot);
sc.close();
}
}