您的位置:首页 > 其它

素数

2015-11-12 09:10 232 查看


素数



Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^


题目描述

质数又称素数,是指一个大于1 的自然数,除了1和此整数自身外,不能被其他自然数整除的数。对于一个给定的十进制整数,如果这个数是素数且它逆置后的整数也为素数,那么输出“True”,否则输出“False”

输入

输入包含多组测试数据。
每组数据只有一行为 1 个整数 n( |n| < 10000)。
输入 0 代表输入的结束,该组数据不做处理。

输出

对于每组测试数据,按照题目描述输出对应的结果。

示例输入

13
41
1
-3
0


示例输出

True
False
False
False


提示

注意题目数据范围及素数的定义。

来源

qinchuan

示例程序

#include<stdio.h>
#include<math.h>
int set(int n)
{
int i;
for(i=2;i<=sqrt(n);i++)
if(n%i==0)
break;
if(i>sqrt(n))
return 1;
else
return 0;
}
int com(int n)
{
int m=0,i,b,c,d,j=0,a[6];
for(i=1;n>=1;i++)
{
a[i]=n%10;
n=n/10;
j++;
}
d=1;
for(i=j;i>=1;i--)
{
c=1;
for(b=1;b<i;b++)
{
c*=10;
}
m+=a[d++]*c;
}
return(m);
}
int main()
{
int n,i,j,m;
while(scanf("%d",&n)&&n)
{
m=0;
if(n<=1)
m=1;
else
{
if(set(n)==1&&set(com(n))==1)
printf("True\n");
else
printf("False\n");
}
if(m==1)
{       printf("False\n");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: