この質問は以前にも回答があったことは知っていますが、その質問についての説明がよくわかりませんでした。
私は HackerRank で 30 日間のコードを作成していましたが、演習の 1 つは、数値が素数かどうかを確認することでした。残念ながら、私は自分でそれを行うことができなかったので、何度も試みた後に与えられた解決策を確認しました. ソリューションを見た後でも、次の行のいずれかを理解できません。
// Check for primality using odd numbers from 3 to sqrt(n)
for(int i = 3; i <= sqrt(n); i += 2){
// n is not prime if it is evenly divisible by some 'i' in this range
if( n % i == 0 ){
isPrime = false;
}
}
がループでsqrt(n)
使用されるのはなぜですか?for