JavaScript判断输入值是否为素数

Posted 橘#

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript判断输入值是否为素数相关的知识,希望对你有一定的参考价值。

       朋友今天出了一道算法,判断回文素数。回文素数每判断出来,出了一堆bug(第一次写博客的萌新瑟瑟发抖),结果就判断了一个素数,咋看其实素数挺简单的,但是执行起来还是有难度,可能是自己还学的不够。

下面就是判断素数的一个方法:

 var repeat = 100;
        var flag = true; 
        if(repeat >= 0) { //判断 如果输入数字大于0 则执行下面判断
                if (repeat == 0 || repeat == 1) //判断输入数值是否为0或者1
                    flag = false; //如果是的则输出false
                else if(repeat == 2) flag = true; //如果输入的是2 则判断为true
                //如果以上两种都不是则进入以下判断,逻辑:如果repeat取余小于repeat的所有数都不为0,证明它除是除不尽的,则是素数
                else{
                    for(var i = 2;i<= Math.sqrt(repeat); i++) { //repeat取余repeat开根号(数学方法)例如输入为100根号5/ 10 20所有的因素都分布在了根号两边,则i取值为10;
                    if(repeat % i == 0) { //如果取余i等于0那就不是素数 直接跳出循环
                        flag = false; 
                        break; 
                    } 
                }
            }
        } 
        else flag = false; //如果零输出为负数,就输出false
        console.log(flag);

现在对于开根号还是了解的不够透彻,算法分析能力有待加强!

萌新第一次发表博客(轻喷)。

以上是关于JavaScript判断输入值是否为素数的主要内容,如果未能解决你的问题,请参考以下文章

判断一个数是否为素数

C++判断素数的代码

C语言判断素数

新手求教 c语言素数判断算法

寻找旋转排序数组中的最小值 II(数组二分查找)打印1000以内的所有素数,并从键盘输入一个正整数,判断是否为素数数组元素统计(算法初阶基础知识)

使用BitArray判断素数