永发信息网

用java写一个程序,判断输出1~100之内的素数?

答案:4  悬赏:20  手机版
解决时间 2021-11-13 18:51
  • 提问者网友:放下
  • 2021-11-13 13:26
用java写一个程序,判断输出1~100之内的素数?
最佳答案
  • 五星知识达人网友:持酒劝斜阳
  • 2021-11-13 14:40
素数是指只能被1和自身整除的数,所以先定义一个函数判断一个数是否是素数,接着从1到100for循环判断。
package baidu;

public class Test {

public static boolean fun(int n){
if(n<2) return false;
for(int i=2;i if(n%i==0) return false;
return true;
}

    public static void main(String[] args) {
      
     int k=0;
        for (int n = 1; n <= 100; n++) { // 1~100的所有数
            if(fun(n)){
             System.out.print(n+" ");
             k++;
                if (k % 5 == 0) // 每输出5个则换行
                    System.out.println();
            }
        }
    }
}
全部回答
  • 1楼网友:拾荒鲤
  • 2021-11-13 16:05
for (int i = 2; i <= 100; i++) { // 质数
    for (int k = 2; k <= i; k++) { // 除数
        // 排除所有在 i=k 之前 能被k整除(余数为0)的数
        if (i % k == 0 && i != k) {
            break;
        }
        // 输出所有在 i=k 且 i%k=0的数
        if (i % k == 0 && i == k) {
            System.out.println(i);
        }
    }
}
  • 2楼网友:渡鹤影
  • 2021-11-13 15:45
public class SuNum {
public static void main(String[] args) {
int i, n, k = 0;
for (n = 0; n <= 100; n++) { // 1~100的所有数
i = 2;
while (i < n) {
if (n % i == 0)
break; // 若能整除说明n不是素数,跳出当前循环
i++;
}

if (i == n) { // 如果i==n则说明n不能被2~n-1整除,是素数
k++; // 统计输出数的个数
System.out.print(i + "  ");
if (k % 6 == 0) // 每输出5个则换行
System.out.println();
}
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯