编写一个程序,将所有素数从1加到100

Ram*_*amy 4 java

我的代码有什么问题?

预期产量= 1060

我检查了1000个素数和.它将正确显示输出3682913

public class PrimeNumber {

      public static void main(String args[]){

            int number = 2;
            int count = 0;
            long sum = 0;
            while(count <100){ 
                if(isPrimeNumber(number)){
                    sum += number;
                    count++;
                }
                number++;
            }
            System.out.println(sum);
        }

        private static boolean isPrimeNumber(int number){

            for(int i=2; i<=number/2; i++){
                if(number % i == 0){
                    return false;
                }
            }
            return true;
        }
    }
Run Code Online (Sandbox Code Playgroud)

Pri*_*jee 5

你最多可以计算100个素数但不能达到100个数字.

所以你的while循环最多应该运行100个数字.

这应该是你的主要方法:

int number = 2;
      int count = 0;
      long sum = 0;
      while(number <= 100){ 
          if(isPrimeNumber(number)){
              sum += number;
              count++;
          }
          number++;
      }
      System.out.println(sum);
  }
Run Code Online (Sandbox Code Playgroud)

这会给你的输出1060.