怎么用java输出100到200 的素数 并且10个一行排列 要能排列出来 在线等

如题所述

第1个回答  2012-09-25
public class Test {

public static void main(String agrs[]){
int k=0; //判断行数,每当k%10==0时,就换行
System.out.println("100~200的素数有:");
for(int i=101;i<200;i++){
for(int j=2;j<i;j++){
if(i%j==0){
break;
}
if(j==(i-1)){
k++;
System.out.print(i+",");
}

}
if(k%10==0 && k!=0){
System.out.println(""); //换行
k=0;
}
}
}
}本回答被提问者采纳
第2个回答  2012-09-25
public class TestPrime {

public static void main(String[] args) {
int num = 200;
int count = 0;
for(int i=100; i<=num; i++){
if(isPrime(i)){
count++;
System.out.print(" "+i);
if(count % 10 == 0){
System.out.println();
}
}
}
}

/**
* 判断是否素数
* @param num
* @return
*/
public static boolean isPrime(int num) {
// 优化
long b = Math.round(Math.sqrt(num));
for(int i=2; i<=b; i++){
if(num % i == 0){
return false;
}
}

return true;
}

}
第3个回答  推荐于2016-03-26
素数就是质数吧
int a,b,c;
b = 100;
c=0;
while(b<200){
for(a=2;a*a<b;a++){
if(b%a==0)
break;
}
if(a*a<b){
system.out.print(b+" ");
if(++c%10==0)
system.out.println("");
}
}本回答被网友采纳
第4个回答  2012-09-25
public static void main(String [] args){
int count=1;
String str=null;
for(int i=101;i<200;i++){
for(int j=2;j<Math.sqrt(i);j++){
if(i%j==0)break;
else{
System.out.print(i+" "+(str=count++%10==0?"\n":""));
break;
}
}
}
}
相似回答