java 求100以内素数

package app1;

public class sushu {
public static void main(String args[]){
int a=0;
代码如下
int a=0;
int i,j;
for( i=2;i<=1000;i++){
for( j=2;j<=i/2;j++){
if(a%j==0)
break;
}
if(j>i/2){
System.out.println(i);
a++;
}
}
System.out.println(" 素数个数为 "+a);
}
}

为什么输出结果是 2, 3 素数个数为2 循环哪里出问题了?

不知道你中间用素数个数a%j==0和后面j>i/2这两个判断条件是什么用,稍作修改如下(flag用来判断是否有能整除的,有的话就置1,每次都置0):

public class sushu {
    public static void main(String args[]) {
        int a = 0, flag = 0;
        int i, j;
        for (i = 2; i <= 1000; i++) {
            flag = 0;
            for (j = 2; j <= i / 2; j++) {
                if (i % j == 0)
                {
                    flag = 1;
                    break;
                }
            }
            if (flag == 0) {
                System.out.println(i);
                a++;
            }
        }
        System.out.println(" 素数个数为 " + a);
    }
}

温馨提示:内容为网友见解,仅供参考
无其他回答

Java 求1-100以内的所有素数,判断一个数是不是素数
求1-100以内的所有素数,编写代码时需注意模块化思想,先分解需求,确定一个数是否为素数后再进行复用。确保代码内部注释清晰,即使是测试代码,也应包含简要说明以方便日后理解。避免使用随意的参数命名,确保代码命名清晰明了。养成代码格式化习惯,使代码整洁易读,提高工作效率。具体实现代码如下:java pack...

用java求3到100的素数,初学者,求简单的
System.out.println("1--100之间的素数(也称质数)的个数 -->"+count);System.out.println("1--100之间的素数(也称质数)的个数之和 -->"+sum);}

Java求100以内的质数的小代码!
1、设计实现:通过for循环输出,使用break跳出。(1)需求:输出1~100的所有素数。(2)素数:--判断条件1:只能被1和本身整除的称为素数。--判断条件2:在区间(1,x\/2)中找不到能整除素数x的整数。--判断条件3:在区间(1,sqrt(x))中找不到能整除素数x的整数。(3)完整代码如下:2、i...

用Java写的程序,输出100以内的素数
int sum=0;System.out.println("1—100内的素数有:");for(int i=1;i<=100;i++){ boolean flag=true; for(int j=2;j<=i\/2;j++){ if(i%j==0){ flag=false; break; } } if(flag){ System.out.print("\\t"+i); sum+=i; }}System.out...

编写java程序找出2-100之间的所有素数 求大神
2-100的素数集合:[2, 3, 4, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]求1到100之间的所有素数。求程序 include<stdio.h> int isprime(int n){ int i; if(n<=1)return 0; for(i=2;i<=n\/2;i++){ ...

输出100以内的所有素数 java
{ public static void main(String[] args){ System.out.println("100以内的素数有:");int i=2,j=0,m;label1:for(i=2;i<100;i++){ for(m=2;m<=(int)(Math.ceil(Math.sqrt(i)));m++){ if(i%m==0){continue label1;} } System.out.print(i+"\\t");j++;if(j%5==0)...

编写一个JAVA应用程序,输出100以内的全部素数及其和。
int sum=0;System.out.println("1—100内的素数有:");for(int i=1;i<=100;i++){ boolean flag=true; for(int j=2;j<=i\/2;j++){ if(i%j==0){ flag=false; break; } } if(flag){ System.out.print("\\t"+i); sum+=i; }}System.out...

用java找出1-100内所有素数输入到屏幕上并将非素数的和也输入到屏幕上...
回答:#include "stdio.h"void main(){printf("---------\\n");int i,j,check;for( i=1;i<=100;i++){check=1;for(j=2;j<i;j++)if(!(check=i%j))break;if(check) printf("%d\\n",i);}}

在Java编写程序输出1到100之间的所有素数?
下面是用Java编写的程序,可以实现输出1到100之间的所有素数:Copy codepublic class Main { public static void main(String[] args) { for (int i = 2; i <= 100; i++) { \/\/ 判断i是否为素数 boolean isPrime = true;for (int j = 2; j < i; j++) { if (i % j == 0) ...

java 输出1——100之间的所有素数
public static void printOH() { System.out.println(1);System.out.println(2);for (int i = 1; i <= 100; i++) { for (int k = 2; k < i; k++) { if (i % k == 0)break;else if (k == i - 1)System.out.println(i);} } } ...

相似回答