题目描述
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。
输入
无
输出
按从小到大的顺序输出若干个纯粹素数,每行一个。
上代码:
#include<bits/stdc++.h>
using namespace std;
bool s(int n)
{
if(n<=1)
{
return 0;
}
if(n==2||n==3)
{
return 1;
}
for(int i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
for(int i=1000;i<3000;i++)
{
if(s(i)&&s(i%1000)&&s(i%100)&&s(i%10))
{
cout<<i<<endl;
}
}
return 0;
}
2751

被折叠的 条评论
为什么被折叠?



