Link
문제
두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오.
입력 > 첫째 줄에 A와 B가 주어진다. A와 B는 공백 한 칸으로 구분되어져 있다.
출력 > 첫째 줄에 다음 세 가지 중 하나를 출력한다.
- A가 B보다 큰 경우에는 '>'를 출력한다.
- A가 B보다 작은 경우에는 '<'를 출력한다.
- A와 B가 같은 경우에는 '=='를 출력한다.
제출
const fs = require("fs");
const input = (
process.platform === "linux"
? fs.readFileSync("/dev/stdin").toString()
: `10 2`
)
.split(" ")
.map(Number);
const [A, B] = input;
if (A > B) {
console.log(">");
} else if (A < B) {
console.log("<");
} else {
console.log("==");
}
풀이과정
1)
const fs = require("fs");
const input = (
process.platform === "linux"
? fs.readFileSync("/dev/stdin").toString()
: `10 2`
).split(" ");
const [A, B] = input;
// A, B의 데이터 타입은 string
console.log(`A=${A}, B=${B}`);
console.log(`A=${typeof A}, B=${typeof B}`);
if (A > B) {
console.log(">");
} else if (A < B) {
console.log("<");
} else {
console.log("==");
}
현재 A와 B는 데이터 타입이 string이기 때문에 제대로 된 크기 비교가 되지 않는다.
2)
const fs = require("fs");
const input = (
process.platform === "linux"
? fs.readFileSync("/dev/stdin").toString()
: `10 2`
)
.split(" ")
.map(Number);
const [A, B] = input;
// A, B의 데이터 타입은 Number
console.log(`A=${A}, B=${B}`);
console.log(`A=${typeof A}, B=${typeof B}`);
if (A > B) {
console.log(">");
} else if (A < B) {
console.log("<");
} else {
console.log("==");
}
따라서 Number로 데이터 타입을 변환하여 비교해야한다.
개념
- map(Number)를 사용하여 풀었던 다른 문제
- [백준] 10430: 나머지 (javascript)
Comment
문제에서 요구했던 출력 값은 '==' 출력 이었는데 '='로 작성하여 틀렸었다 ,,ㅎㅎ
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준] 2753: 윤년 (javascript) (0) | 2022.02.25 |
---|---|
[백준] 9498: 시험 성적 (javascript) (0) | 2022.02.23 |
[백준] 2588: 곱셈 (javascript) (0) | 2022.02.08 |
[백준] 10430: 나머지 (javascript) (0) | 2022.02.08 |
[백준] 18108: 1998년생인 내가 태국에서는 2541년생?! (0) | 2022.02.07 |