배열 내 양수 0 음수 각각의 비율을 구해라.
단, 소수점 6번째 자리까지 표기하삼.
for 문으로 배열 검사해서 count 올려주고
count / 배열의 길이에 toFixed(6) 먹여주면 됨.
"use strict";
process.stdin.resume();
process.stdin.setEncoding("utf-8");
let inputString = "";
let currentLine = 0;
process.stdin.on("data", function (inputStdin) {
inputString += inputStdin;
});
process.stdin.on("end", function () {
inputString = inputString.split("\n");
main();
});
function readLine() {
return inputString[currentLine++];
}
/*
* Complete the 'plusMinus' function below.
*
* The function accepts INTEGER_ARRAY arr as parameter.
*/
function plusMinus(arr) {
let plusCnt = 0;
let minusCnt = 0;
let zeroCnt = 0;
for (let i = 0; i < arr.length; i++) {
switch (true) {
case arr[i] < 0:
minusCnt++;
break;
case arr[i] === 0:
zeroCnt++;
break;
case arr[i] > 0:
plusCnt++;
break;
}
}
console.log((plusCnt / arr.length).toFixed(6));
console.log((minusCnt / arr.length).toFixed(6));
console.log((zeroCnt / arr.length).toFixed(6));
}
function main() {
const n = parseInt(readLine().trim(), 10);
const arr = readLine()
.replace(/\s+$/g, "")
.split(" ")
.map((arrTemp) => parseInt(arrTemp, 10));
plusMinus(arr);
}
소수점 나타낼 때 => toFixed 매서드 활용
switch case 문에서 case에 값 대신 조건을 쓰고 싶다면
switch (true) - case 조건 :