제주코딩베이스캠프 자바스크립트 100제를 공부하며 정리한 내용입니다. 문제와 정답 노션 링크(무료), 인프런 해설 강의(유료)
숫자가 주어지면 소수인지 아닌지 판별합니다. 소수는 1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수를 말합니다. (ex. 3, 5, 7..)
예를 들어 우선 1보다 크고 7보다 작은 숫자들로 7이 나누었을 때 딱 떨어지면 7은 소수가 아닌 것입니다.
const num = 13; // 임의 숫자를 정하고
function findNum (n) { // 소수를 구하는 함수를 만듬
for(let i = 2; i < n; i++) { // 소수는 1보다 커야 므로 i 는 2부터
if (n % i === 0) { // 나머지가 0 이라면, 1과 자기 자신 이외에 숫자로 나누어 떨어진다면 소수가 아닌 것
console.log("no");
return false;
}
}
console.log("yes"); // 아니라면 소수가 맞다고 반환
}
findNum(num);
여기서 넘버에 숫자 1을 전달하면 yes 가 나옵니다. i 가 1일때는 for 조건문이 실행되지 않으므로 아래처럼 조건문을 추가합니다.
function findNum (n) {
for(let i = 2; i < n; i++) {
if (n % i === 0) {
console.log("no");
return false;
}
}
if (n === 1) {
console.log("no");
return false;
}
console.log("yes");
}