問題描述:在控制臺輸出前50個素數,每行10個。
步驟:
1、從2開始判斷給定的數是否是素數(判斷它是否能被2,3,4到number/2的整數整除,若能則不是素數)。
2、統計素數個數。
3、打印。
while(count<NUMBER_OF_PRIME){
判斷number是否素數;
If(素數)
輸出number并將計數器+1;
number++;
}
使用布爾變量isPrime表示number是否素數,初值為true;
For(int divisor=2;divisor<=number/2;divisor++){
If(number%divisor==0){
將isprime置為false;
退出循環;
}
}
程序清單:
public class PrimeNumber{
public static void main(String[] args){
System.out.println("The first 50 prime numbers are");
final int NUMBER_OF_PRIMES = 50;
int count = 0,number = 2;
while(count<NUMBER_OF_PRIMES)
{
boolean isPrime = true;
for(int divisor=2;divisor<=number/2;divisor++){
if(number%divisor==0){
isPrime = false;
break;
}
}
if(isPrime){
count++;
if(count%10==0)
System.out.println(" "+number);
else
System.out.printf("%5d",number);
}
number++;
}
}
}
新聞熱點
疑難解答