网站建设型网站横幅(banner)图片/常见的搜索引擎有哪些
目录
前提提要
代码实现
输入示例
输出结果
代码分析
前提提要
思路:判断m是否为素数的算法是这样的,让m被2到根号m除,如果m不能被2~根号m之中的任何一个整数整除,就可以确定m是素数。
为了记录m是否为素数,可以用一个bool类型的prime变量来记录。
在循环开始的时候设prime为真,若m被某一整数整除,就表示m不是素数,此时使布尔变量prime的值变为假。
最后根据prime是否为真,决定是否输出m。
而2为素数,若m<=2了话,判断素数可以从3开始。
代码实现
#include<iostream>
#include<iomanip>
#include<cmath>
using namespace std;
int main() {int m, k, i , n = 0,z;bool prime;cout << "请依次输入需要筛选素数的范围,由低位到高位数:";cin >> m >> z;if (m <= 2&&z>=2){cout <<setw(5)<< 2;m = 3;}for ( ; m <= z; m += 1){prime = true;k = int(sqrt(m));i = 2;while (i <= k){if (m % i == 0){prime = false;break;}i++;}if (prime){n++;cout << setw(5) << m;//输出素数m,字段宽度为5}if (n % 10 == 0){cout << endl;}}cout << '\n';return 0;
}
输入示例
100 200
输出结果
代码分析
代码有用到setw()函数,此函数的头文件为#include<iomanip>,setw()用于设置字段的宽度,但后面紧跟的字段不满足长度时,前面加空格;若后面字段长度超过,则不起作用。简单意思来说,就是对齐。