某个数以内的素数 (质数)【别划走,认真看,对你有用的】

首先你得知道什么是素数 ?

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

素数的定义 :

除了 1 和 他自身外 ,不能被其它数整除 (也就是 取模不等于0)取模 就是  取余数

举个例子 :

5 % 4 的余数不为0

5 % 3 的余数不为0

5 % 2 的余数不为0

所以5是个素数

你在写程序时,肯定得去判断 5 以内的所有数,让5对其取余数,对吧?

废话不多说直接代码写上:

下面这是 c++ 的代码 ,你得明白其中的思路,其他语言一样可以实现 ,我再给你写个JavaScript 的吧,我猜测需要的人多点

#include <iostream>
using namespace std;
int main()
{
    int a;
    printf("请输入一个数\n");
    cin >> a;
    if (a <= 2){
        cout << a << "以内没有素数";
        return false;
    }
    //素数最小是 2  
    for (int i = 2; i < a;i++) {
        //依次计算 a 以内的素数
        //a 的值 大于 2 ,小于 2 只有 1 和 0,显然都不是素数
        for (a; a > 2; a--) {
            //如果 a 对 i 取余 不为 0 则是素数
            if (a % i != 0){
                cout << a <<"\n";
            }
        }
    }
    cout << a;
}

JavaScript 的 ,,道理都一样,下面的还可以优化很多,我懒得优化了,交给你们了

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script type="text/javascript">
            var a = parseInt(prompt("请输入一个数"));

            if (a === 1 || a === 2) {
                document.write(a + "这个数以内没有素数");

            }
            for (var i = 2; i < a; i++) {
                for (a; a > 2; a--) {
                    if (a % i !== 0) {
                        document.write(a + "\n");
                    }
                }
                document.write(a);
            }
        </script>
    </body>
</html>

猜你喜欢

转载自blog.csdn.net/rb0518/article/details/120505481