[JS] 알고리즘 - 소수판별

chaeny·2020년 10월 14일

algorithm

목록 보기
5/6

문제41

let n = Number(prompt("숫자입력"));
for (let i = 1; i <= n; i++) {
    if (n % i === 0) {
        console.log(i);
    }
}

숫자를 입력하게 되면 소인수분해가 가능하다.
만약 8이라면 (1, 2, 4, 8)
소수 13이라면 (1, 13) 이될것이다
배열에 넣어서 length가 2일 경우 "소수"라고 나타내면 될것 같다.
let arr = [];
let n = Number(prompt("숫자입력"));
for (let i = 1; i <= n; i++) {
    if (n % i === 0) {
        arr.push(i);
    }
}
arr.length === 2 ? "YES" :"NO"

해답.
const num = prompt('숫자를 입력하세요.');

function check_prime(num) {
  for (let i=2; i<num; i++) {
    const result = num % i;
    if (result === 0) {
      console.log('NO');
      return false;
    }
  }
  if (num === 1) {
    console.log('NO');
    return;
  }
  console.log('YES');
}

check_prime(num);

0개의 댓글