java求素数算法

来源:互联网 发布:润和软件特色 编辑:程序博客网 时间:2024/05/16 05:29
求100内的素数:
   public void a() {              for (int i = 2; i <= 100; i++) {                  int temp = (int) Math.sqrt(i);                  // 我把那个aqrt单独提出来,这样速度稍微快一点,虽然在100内变化不大,但如果是10000000内的素数呢?                  if (i <= 3) {                      System.out.println(i + " is a prime");                  } else {                      for (int j = 2; j <= temp; j++) {// 把Math.sqrt(i)转换为int类形                          if (i % j == 0) {                              break;                          }                          if (j >= temp) {                              System.out.println(i + " is a prime");                          }                      }                        }              }          }  

(二)求n-m间的素数
  public void sushu(int n ,int m){              for (int i = n; i < m; i++) {                  int temp = (int)Math.sqrt(i);                  if(i<=3){                      System.out.println(i);                  }                  for (int j = 2; j <= temp; j++) {                      if(i%j==0){                          break;                      }                      if(j>=temp){                          System.out.println(i);                      }                  }              }          } 


0 0