본문 바로가기
ALGORITHM/백준 With Node.js

[백준] 2588번 / 곱셈 / Node.js

by LAY CODER 2021. 4. 20.

문제

 

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

 

 

 

 

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

 

입력

 

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

 

출력

 

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

 

예제 입력 1

 

472

385

 

예제 출력 1

 

2360

3776

1416

181720

 

CODE

const readline = require('readline');

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});

let input = [];

rl.on('line', function (line) {
    input.push(line);
}).on('close', function () {
    let num1 = Number(input[0]);
    let num2 = Number(input[1]);

    console.log(num1 * (num2 % 10));
    console.log(num1 * Math.floor((num2 % 100) / 10));
    console.log(num1 * Math.floor(num2 / 100));
    console.log(num1 * num2);

    process.exit();
});

 

 

Comment

 

몫을 구할 때는 소수점이 나오기 때문에, Math.floor(버림) 을 이용하는 걸 까먹어서는 안된다.

 

1의 자리는 10으로 나눈 나머지를 구하면 되고

 

10의 자리는 100으로 나눈 나머지를 10으로 나눈 몫으로 구하면 되고

 

100의 자리는 100으로 나눈 몫을 구하면 된다.  

 

References


2021.04.19 - [ALGORITHM/백준 알고리즘 With Node.js] - 8. 백준 1008번 문제 / A/B / Node.js

 

 

댓글