首先你得知道什么是素数 ?
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>