演習課題「素数判定をおこなう」
整数 n が入力として与えられるので、素数ならば YES
と、素数ではないならば NO
と出力してください。
右側のコードエリアには、入力を受け取って関数 primalityTest に渡し、その返り値によって YES
と NO
を出力するコードが用意されています。関数 primarityTest のコードを書き加え、問題を解くコードを完成させてください。
期待する出力値
YES
※有料会員になるとこの動画をご利用いただけます
詳しい説明を読む
#02:高速な素数判定法
このチャプターでは、高速な素数判定法について学習します。
整数 i が 2 以上 √n 以下であるということは、i^2 が 4 以上 n 以下であることと同値です。したがって、ループの条件式を以下のように書き換えてもよいです。この方法だと浮動小数点数がコードに登場しなくなるので、誤差について考慮する必要がなくなります。for(long i = 2; i*i <= n; i++)
Math クラスの sqrt メソッドを用いると平方根を求めることができます。double sqrtN = Math.sqrt(n)
ログインすると採点できます
コードの実行