zoukankan      html  css  js  c++  java
  • 素数的判断

    public class Test2 {
    /*题目:判断重0开始到任何数之间有多少个素数,并输出所有素数。
    程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。*/
    public static void main(String[] args) {
    //根据题意知道判断条件为:n%2到Math.sqrt(n)到j!=0为素数
    //输入需要判断的范围
    Scanner s = new Scanner(System.in);
    int number = s.nextInt();
    //定义最后的素数的总数
    int sum=0;
    //设置判断条件
    boolean flag=true;
    //循环获取范围内的所有数字
    for (int i = 1; i <=number; i++) {
    //如果有数字取余为0,就跳出循环后,新循环重置判断条件
    flag=true;
    for (int j = 2; j <=Math.sqrt(number); j++) {
    //判断如果i对2到Math.sqrt(n)取余不为0,sum就加1;
    if (i%j==0) {
    flag=false;
    //终止这一层循环
    break;
    }
    }
    //如果不存在取余为0的数,就加1,并将flag判断条件重置
    if (flag) {
    sum++;
    flag=true;
    }
    }
    System.out.println(sum);
    }
    }

    注:判断好判断条件就好。可以优化一下将for (int i = 1; i <=number; i++) 改为for (int i = 1; i <=number; i+=2) 因为偶数必然不是素数。

  • 相关阅读:
    浏览器同源政策及其规避方法---转阮大神
    js跨域详解
    js中top、self、parent
    杂记
    DOM 踩踩踩
    java idea 连接数据库
    数据库mySQL常用命令
    用迭代实现80人围成一圈逢3取出
    如何把通过类建立的对象存入数组中.
    面向对象编程
  • 原文地址:https://www.cnblogs.com/plas/p/9880332.html
Copyright © 2011-2022 走看看