/**封装函数方式
* 判断是否是质数
* @param 要判断的数字
* @return boolean true表示是质数、false表示不是质数
*/
function isPrime(num) {
// 循环 从2开始到num-1
for (var i = 2; i <= num - 1; i++) {
// 判断 i 能否被 num 整除
if (num % i === 0) {
return false;
}
}
return true;
}
// 输出100-200之间所有的素数(质数)
for (var i = 100; i <= 200; i++) {
// 判断 i 是否是质数
if (isPrime(i)) {
console.log(i);
}
}
1.如图所示判断质数的方法是封装函数的方法,将判断条件封装进函数体内,然后在再对数进行判断,调用函数即可
//不使用函数封装方式
for (var i = 100; i <= 200; i++) {
var flag = true;
for (var j = 2; j < i; j++) {
if (i % j == 0) {
flag = false;
break;
}
}
if (flag == true) {
console.log(i);
}
}
2.第二种则是不使用函数封装的方式,判断是否为质数,只能一个一个去除,所以需要用到循环方式,需要注意的是,1和它本身这两个数是不需要判断的,如图实现的就是输出100——200之间的质数,需要输出什么范围只需要更改循环范围即可