绝对素数是指本身是素数,其逆序数也是素数的数。例如:10321与12301是绝对素数。
编程实现:键盘输入一个整数n,输出小于n的所有绝对素数。
要求:编写函数int isprime(int x)实现测试参数x是否为素数;编写函数int convert(int x),返回参数x的逆序数。main中完成输入输出与函数调用。
int convert(int n)
{
int n_Inv;
n_Inv=0;
while (n/10!=0)
{
n_Inv=n_Inv*10+n%10;
n=n/10;
}
n_Inv=n_Inv*10+n;
return n_Inv;
}
int is_prime(int n)
{
int i;
int sqr;
sqr=(int)sqrt(n);
if (n==2)
{
return 1;
}
for (i=2;i<=sqr;i++)
{
if (n%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
int n=0;
int i=0;
printf("Please Enter: ");
scanf("%d",&n);
for (i=2;i<=n;i++)
{
if (is_prime(i) && is_prime(convert(i)))
{
printf("%d\n",i);
}
}
return 0;
}
void main()
{
scanf();//输入一个整数
isprime(num);//调用判素数的方法
isprime(isconvert(num));//返回逆序数是素数的
}
string isprime(string num)
{
//判素数的规则
}
//返回逆序数
string convert(string num)
{
//将该数字首位对调 利用循环就是逆序数
}
请问本题的实验内容 算法思想分析 实验过程分析是什么?