求1000以内的回文素数
程序员文章站
2022-03-09 15:08:04
...
回文素数:
任意整数i,当从左向右和从右向左读是相同的,且为素数,
注:本题较为简单,主要在判断是否为素数,详细见code;
#include<iostream>
using namespace std;
int IsPrime(int i)//判断是否为素数
{
int j;
if(i<=1)
return 0;
if(i==2)
return 1;
for(j=2;j*j<=i;++j)//朴素检测素数的方法 从2开始试除 所有自然数
if(i%j==0)
return 0;
return 1;
}
int main()
{
int i;
for(i = 10;i<=1000;i++)
{
if(IsPrime(i)==1)//判断是否为素数之后,判断是否为回文数
//显然 1000以内只有两种情况,一种是两位数,一种是三位数
{
if(i/100==0)//两位数
{
if(i/10==i%10)
cout<<i<<endl;
}
else if(i/100==i%10)//三位数
cout<<i<<endl;
}
}
}