개발관련/C언어
소수판별하기
guuuuuuu
2015. 11. 4. 19:30
bool prime(int n)
{
for(int i=2;i<n;i++){
if(n%i==0)return false; //소수 아님
}
return true; //소수임
}
//1과 자기 자신을 제외한 수로 나누어 떨어지지 않는다. 즉 if문을 만족하면 소수가 아님.
조금 더 향상된 판별 방법
bool prime(int n)
{
/* --> 소수 판별 오류남..
int sqrn;
sqrn = (int)sqrt(n);
for(int i=2;i<sqrn;i++) // 루트n까지만 돌려도 된다.
{
if(n%i==0){
return false;
}
}
return true;
}