devlog_zz

[ Javascript ] 소수인지 판별하기, Math.sqrt(n) 제곱근 활용 본문

Front End/Javascript

[ Javascript ] 소수인지 판별하기, Math.sqrt(n) 제곱근 활용

YJ_SW 2023. 2. 11. 21:26
728x90

소수 판별하기 

1) 1이나 0은 소수가 아니므로 제외

2) num을 2부터 num의 제곱근까지 나눈 나머지가 0이면 소수 아님

√n이 될 때 까지만 반복해보면 이 수가 소수인지 알 수 있으므로 반복횟수를 줄일 수 있다.

const isPrime = (num) =>{
	if(num === 1 || num === 0) return false
	// 1이나 0 이면 소수가 아님
	for ( let i = 2 ; i <= Math.sqrt(num) ; i ++) {
		if( num % i === 0) return false 
        // 2부터 N제곱근까지의 수로 N을 나눴을 때 나머지가 0 이면 소수 아님
	}
	return true
}

 

참고 - https://velog.io/@loocia1910/javascript%EC%97%90%EC%84%9C-%EC%86%8C%EC%88%98Prime-number-%EA%B5%AC%ED%95%98%EA%B8%B0

728x90
Comments