当前位置:   article > 正文

Python 寻找反素数_寻找反素数python

寻找反素数python

描述

反素数,英文称作 emirp(prime(素数)的左右颠倒拼写),是素数的一种。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

把一个素数的阿拉伯字数字序列变成由低位向高位反写出来,得到的另一个数还是素数。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

例如素数13,反写就是31,它是另一个素数,所以13是一个反素数。这个定义排除了相关的回文素数,因为回文素数反写不是另一个数而是它本身。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

最小的几个反素数为:13, 17, 31, 37, 71, 73, 79, 97, 107, 113, 149, 157, 167, 179, 199, ...‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

编写程序,输入两个数m和n,要求n > m,输出m~n(包含m和n)之间所有的反素数,数之间用空格隔开。

样例

输入1

5 50

输出1

13 17 31 37

  1. m, n = map(int, input().split())
  2. def isprime(n): # 判断是否为素数
  3. if n == 1:
  4. return False
  5. for i in range(2, n):
  6. if n % i == 0:
  7. return False
  8. return True
  9. def primal(n): # 判断反写是否为素数
  10. if str(n) == str(n)[::-1]:
  11. return False # 判断是否为本身,即回文数
  12. if isprime(n):
  13. n = str(n)
  14. n = n[::-1]
  15. n = int(n)
  16. if isprime(n):
  17. return True
  18. else:
  19. return False
  20. for i in range(m, n + 1):
  21. if primal(i):
  22. print(i, end=' ')

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/512220
推荐阅读
相关标签
  

闽ICP备14008679号