자바스크립트, 소수 판별

라용·2022년 9월 15일
0

JS 100제 _ 제코베

목록 보기
11/13

제주코딩베이스캠프 자바스크립트 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");
}
profile
Today I Learned

0개의 댓글