📄 p11.cpp
字号:
//定义一个类,从3开始查找出连续N个自然数,要求它们都是非素数。
//要注意的是new ,delete的用法,以及在怎么判定在循环中连续判定,关于t的用法。
#include <iostream>
using namespace std;
class NOPRIME
{
public:
NOPRIME(int );
int yes(int x);
void search();
void print();
~NOPRIME()
{
if(p)
delete []p;
}
private:
int n;
int *p;
};
NOPRIME::NOPRIME(int n1)
{
n=n1;
p=new int[n1];
}
int NOPRIME::yes(int x)
{
for(int i=2;i<x/2;i++)
if(x%i==0)
return 1;
return 0;
}
void NOPRIME::print()
{
for(int i=0;i<n;i++)
cout<<p[i]<<'\t';
cout<<endl;
}
void NOPRIME::search()
{
int i,j,t;
for(i=3;;i++)
{
t=1;
for(j=i;j<i+n;j++)
{
p[j-i]=j;
if(yes(j)==0)
{t=0; break;}
}
if(t==1)
break;
}
}
int main()
{
NOPRIME num(20);
num.search();
num.print();
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -