任何人都可以帮助理解这个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?