주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
주어진 수들 중 소수의 개수를 출력한다.
4
1 3 5 7
3
소수: 약수가 1과 자기 자신만 있는 자연수 (=약수가 2개 밖에 없는 수) (=1과 자기 자신으로만 나누어떨어지는 수)
const fs = require("fs");
const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt";
let input = fs.readFileSync(filePath).toString().split("\n");
const TESTCASE = input.shift();
input = input[0].split(" ").map((item) => +item);
let cnt = 0;
function isPrime(num) {
if (num === 1) return;
for (let i = 2; i <= Math.sqrt(num); i++) {
if (num % i === 0) return;
}
return num;
}
for (let i = 0; i < TESTCASE; i++) {
if (isPrime(input[i])) cnt++;
}
console.log(cnt);