このJavaプログラムを理解するのに役立つ体はありますか?
必要な数を入力すると、素数が出力されるだけで、うまく機能します。
class PrimeNumbers
{
public static void main(String args[])
{
int n, status = 1, num = 3;
Scanner in = new Scanner(System.in);
System.out.println("Enter the number of prime numbers you want");
n = in.nextInt();
if (n >= 1)
{
System.out.println("First "+n+" prime numbers are :-");
System.out.println(2);
}
for ( int count = 2 ; count <=n ; )
{
for ( int j = 2 ; j <= Math.sqrt(num) ; j++ )
{
if ( num%j == 0 )
{
status = 0;
break;
}
}
if ( status != 0 )
{
System.out.println(num);
count++;
}
status = 1;
num++;
}
}
}
この for ループ条件がわかりません
for ( int j = 2 ; j <= Math.sqrt(num) ; j++ )
なぜ num の sqrt を取っているのですか...これは 3 です...なぜそれを 3 と仮定したのですか?