/*
*Copyright (c) 2014, 烟台大学计算机学院
*All rights reserved.
*文件名称:test.cpp
*作者:陈栋梁
*完成日期:2014年 11 月 10日
*版本号:v1.0
*
*问题描述:
*输入描述:
*输出描述:
*/
#include<iostream>
#include<cmath>
using namespace std;
bool ispalindrome(int);
int mreverse(int) ;
bool isPrime(int);
int main()
{
int n,m;
cin>>n;
for(m=2; m<=n; ++m)
{
if(isPrime(m)&&isPrime(mreverse(m)))
cout<<m<<" ";
}
return 0;
}
bool isPrime(int n)
{
bool prime=true;
int k=int(sqrt(n));
for(int i=2; i<=k; i++)
{
if(n%i==0)
{
prime=false;
break;
}
}
return prime;
}
int mreverse(int x)
{
int m=0;
while(x>0)
{
m=m*10+x%10;
x=x/10;
}
return m;
}
运行结果: