- 题目:设计程序,输出所有小于等于n(n为一个大于2的正整数,比如100)的素数,要求:(1)每行输出10个素数;(2)尽可能采用较优算法。
- 目的:计算时间复杂度,体会时间复杂度对程序运行速度的影响
#include <iostream>
using namespace std;
class IfIsPrime{
public:
int n, num;
void input(){
cin >> n;
}
bool prime(int m)
{
if (m == 1) return false;
if (m == 2) return true;
if (m>2)
{
for (int i=2; i<m; ++i)
{if (m%i == 0)
return false;
}
return true;
}
}
void output()
{
for (int i=1; i<n;++i)
{
if (prime(i)) {
cout << i;
num += 1;
if (num = 9) {
cout << endl;
num = 0;
}
}
else continue;
}}
};
int main(){
IfIsPrime p;
p.input();
p.output();
return 0;
}