反素数指一个素数将其逆向拼写后也是一个素数的非回文数,编写一个函数判断一个数是否是反素数并编写测试程序找出前30个反素数输出到屏幕上每行8个数每个数占5列右对齐
做个判断素数函数,以及整数求反函数就好了
def isprime(n):
i=2
while i<n:
if n%i==0:
return 0
i=i+1
return 1
def rev(n):
m=0
while n>0:
m=m*10+n%10
n//=10
return m
def revprime(n):
if isprime(n) and isprime(rev(n)):
return 1
return 0
count = 0
n = 2
while count < 30:
if revprime(n) == 1:
count = count+1
if count%8==0:
print()
print("%5d"%n,end="")
n=n+1
def isPrime(x):
i=2
while i*i<=x:
if x%i==0:
return 0
i+=1
return 1
def fun(x):
s=int(str(x)[::-1])
return isPrime(x) and isPrime(s) and x!=s
i=0
x=2
while i<30:
if fun(x):
print(f'{x:5}',end='')
i+=1
if i%8==0:
print()
x+=1
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!