编程求出100到10000之间既是素数又是回文数的所有数~用c语言,急 在线等
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程求出100到10000之间既是素数又是回文数的所有数~用c语言,急 在线等相关的知识,希望对你有一定的参考价值。
参考技术A #include <stdio.h>#include <math.h>
int p(int x) //x是素数返回1,否则返回0
int i;
for(i=2;i<=sqrt(x);i++)
if (x%i==0) return 0;
return 1;
int h(int x)//x是回文,返回1,否则返回0
int y=x,i=0;
int a,b;
while (y>0) y=y/10,i++; //求x的位数
y=x;
while (y)
a=y/pow(10,i-1);
b=y%10;
y=y-a*pow(10,i-1);
y=y/10;
if (a!=b) return 0;
i=i-2;
return 1;
void main()
int i;
for(i=100;i<10000;i++)
if(p(i) && h(i))
printf("%d,",i);
本回答被提问者采纳
Python3 回文素数
回文素数
描述
回文素数是指一个数既是素数又是回文数。例如,131,既是素数又是回文数。
用户输入一个正整数 n , 请你在一行内输出从小到大排列的的前n个回文素数,数字后面用一个空格进行分隔。
输入格式
输入一个正整数
输出格式
符合要求的回文素数
输入输出示例
输入 10
输出 2 3 5 7 11 101 131 151 181 191
代码:
def prime (x): for i in range(2,int(x**0.5)+1):#x**0.5要向上取整 y = x%i if y==0: break return False else: return True #定义一个函数来判断是否是素数 def huiwen (x): if str(x)==str(x)[::-1]: return True else: return False #定义一个函数判断是否是回文数 n = int(input()) m = 0 i = 2 while(m<n): if prime(i) and huiwen(i): print(i,end=\' \') i = i + 1 m = m + 1 else: i = i + 1
以上是关于编程求出100到10000之间既是素数又是回文数的所有数~用c语言,急 在线等的主要内容,如果未能解决你的问题,请参考以下文章