美文网首页web前端之路
如何用JS找出1-100之间的质数?方法详解

如何用JS找出1-100之间的质数?方法详解

作者: 疯也是一种态度_ | 来源:发表于2019-10-16 10:24 被阅读0次
    质数是什么?

    质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。

    • 只能被1 和 自身 整除的数才叫质数
    质数的特点

    不能整除其他数字,所以它和1以及自身取余会等于0,但是不适用于其他数字。

    代码如下:

    function Zhi(n) {
        // 判断一个数是否能被自身小的正整数(除开1和自身)整除.如果能整除则不是质数,否则反之.
        for (var i = 2; i < n; i++) {
            if (n % i == 0) {
                return false;
            }
        }
        return true
    }
    console.log(Zhi(4))
    输出:false   // 4不是质数 所以返回false
    

    上边这个方法是判断是否是一个质数

    那如何判断1到任意数之间的所有质数呢, 那就比较简单了

    代码如下:

     function zhiShu(num) {
        var arr = [];
        // 遍历任意数, 利用test方法判断遍历数是否为质数;如果是, 就加入数组;
        for (var i = 2; i < num + 1; i++) {
            if (Zhi(i)) {
                arr.push(i);
            }
        }
        return arr;
    }
    console.log(zhiShu(100))  //打印100之间的质数
    输出:[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
    

    \color{red}{\Large\mathbf{1-100之间有25个质数}}

    质数表

    相关文章

      网友评论

        本文标题:如何用JS找出1-100之间的质数?方法详解

        本文链接:https://www.haomeiwen.com/subject/kedymctx.html