어떠한 미지의 수 n에 대하여 소수인지 판단하는 알고리즘.
소수 판단을 하는 문제에서 많이 사용한다.
bool check (long int dec){
if(dec<2){ //dec이 2이하라면 소수가 아니다.
return false;
}
if(dev ==2){
return true;
}
else{
for(long int i=2; i*i<=dec; i++){ //약수의 최대값은 dec의 루트 값이기 때문에
i*i가 dec을 넘지 않으면 약수가 될 수 있다.
if(dec%i==0){
return false;
}
}
}
return true;
}
i가 약수가 되지 않는다면 그 수는 소수가 된다.