public class Zhishu extends TestCase {
public static void main(String[] args) {
System.out.println("1");
System.out.println("2");
System.out.println("3");
for( int i=4;i<100;i++){
for(int j=2;j<i;j++)
{
if(i%j==0) {
continue;
}
System.out.println(i);
}
}
}
}这个程序是想把100以内的质数找出来,结果里面的循环循环一次就要输出一次i。怎么把这个程序改好。大侠们帮帮忙啊。小第我刚学JAVA不久。
public static void main(String[] args) {
System.out.println("1");
System.out.println("2");
System.out.println("3");
for( int i=4;i<100;i++){
for(int j=2;j<i;j++)
{
if(i%j==0) {
continue;
}
System.out.println(i);
}
}
}
}这个程序是想把100以内的质数找出来,结果里面的循环循环一次就要输出一次i。怎么把这个程序改好。大侠们帮帮忙啊。小第我刚学JAVA不久。
boolean flg = false;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
break;
} else
flg = true; }
if (flg == true)
System.out.println(i);
}
continue;
}
System.out.println(i);
把这段改成:
if(i%j==0) break;
if(i==(j+1)) System.out.println(i);试试。
public static void main(String[] args) {
System.out.println("1");
System.out.println("2");
System.out.println("3");
boolean flag = true;
for( int i=4;i<100;i++){
for(int j=2;j<i;j++){
if(i%j==0) {
flag = false;
}
}
if(flag){
System.out.println(i);
}else{
flag = true;
}
}
}
}
int count = 0;
System.out.println("1");
System.out.println("2");
System.out.println("3");
for(int i=4;i<100;i++){
count = 0;
for(int j=2;j<i;j++){
if(i%j==0){
count++;
}
}
if(count<1){
System.out.println("---"+i);
}
}
}
for (int i = 4; i < 100; i++) {
boolean flg = false;
int x=(int)Math.sqrt(i);
for (int j = 2; j <= x; j++) {
if (i % j == 0) {
flg=false;
break;
} else
flg = true;
}
if (flg == true)
System.out.println(i);
}