欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

求1000以内的回文素数

程序员文章站 2022-03-09 15:08:04
...

回文素数:

   任意整数i,当从左向右和从右向左读是相同的,且为素数,

注:本题较为简单,主要在判断是否为素数,详细见code;

求1000以内的回文素数

#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;
		}
	}
}