python-区间内的真素数(赛氪OJ)

[题目描述]
找出正整数 M 和 N 之间(N 不小于 M)的所有真素数。
真素数的定义:如果一个正整数 P 为素数,且其反序也为素数,那么 P 就为真素数。
例如,11,13 均为真素数,因为 11 的反序还是为 11,13 的反序为 31 也为素数。
输入:
输入两个数 M 和 N,空格间隔。
输出:
按从小到大输出 M 和 N 之间(包括 M 和 N)的真素数,逗号间隔。如果之间没有真素数,则输出 No。
样例输入1
10 35

样例输出1
11,13,17,31

提示:
1≤M≤N≤100000
来源/分类(难度系数:一星)


完整代码展示:
a,b=map(int,input().split())
c=[]
for i in range(a,b+1):
      l=2
      m=int(pow(i,0.5))
      while l<=m:
              if i%l==0:
                  break
             l+=1
      if l>m and i>=2:
          d=list(str(i))
          d.reverse()
          sum=""
          for j in range(0,len(d)):
               sum+=d[j]
          sum=eval(sum)
          x=2
          y=int(pow(sum,0.5))
          while x<=y:
                  if sum%x==0:
                       break
                  x+=1
         if x>y:
              c.append(i)
if len(c)==0:
    print("No")
else:
    for k in range(0,len(c)-1):
          print(c[k],end=",")
    print(c[-1])


代码解释:
a,b=map(int,input().split())
 c=[]                                         
”,让用户输入限定求解区间的两个数值a,b。建立一个空列表c。
for i in range(a,b+1):
        l=2
        m=int(pow(i,0.5))
        while l<=m:
                if i%l==0:
                    break
               l+=1
               ”,根据素数(质数)的定义,遍历a到b区间内的所有数值,查找符合条件的数值。
if l>m and i>=2:
       d=list(str(i))
       d.reverse()
       sum=""
       for j in range(0,len(d)):
             sum+=d[j]
       sum=eval(sum)
       x=2
       y=int(pow(sum,0.5))
       while x<=y:
               if sum%x==0:
                    break
              x+=1
       if x>y:
            c.append(i)
            ”,如果该数值为质数,则将它转换为字符串并储存进列表d中。接着反转列表d,建立一个空字符串sum,让sum从左到右依次连接列表d中所有元素组成新的字符串sum。连接完成后,将新的字符串sum由字符串转换为可计算的数值,并按照质数的定义判断其是否为质数。如果是,则将其添加进列表c中。
if len(c)==0:
      print("No")
 else:
        for k in range(0,len(c)-1):
              print(c[k],end=",")
        print(c[-1])
                          ”,遍历结束后,判断列表c是否为空。如果是,则输出”No”;否则遍历列表c,从左至右依次打印列表c中所有元素,每两个元素之间插入一个逗号(末尾不插入)。


运行效果展示:

d0f21f394501487f86d7cbd637c69cba.jpg

8597bab72dfb427282e1f5804cfb7b06.jpg 

             (声明:以上内容均为原创) 

相关推荐

  1. python04_找出某个区间所有素数

    2024-07-17 13:10:07       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 13:10:07       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 13:10:07       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 13:10:07       57 阅读
  4. Python语言-面向对象

    2024-07-17 13:10:07       68 阅读

热门阅读

  1. C语言-->指针详解

    2024-07-17 13:10:07       22 阅读
  2. 【乐吾乐2D可视化组态编辑器】消息

    2024-07-17 13:10:07       25 阅读
  3. C 语言实例 - 数组拆分与合并

    2024-07-17 13:10:07       21 阅读
  4. vue3 学习笔记11 -- 模板语法和指令

    2024-07-17 13:10:07       22 阅读
  5. GNN Algorithms(9): 多模态Multi-Modal、多任务Multi-Task

    2024-07-17 13:10:07       28 阅读
  6. Julia 流程控制

    2024-07-17 13:10:07       24 阅读
  7. 关于C# 开发Winfrom事后总结

    2024-07-17 13:10:07       25 阅读
  8. 什么是决策树?

    2024-07-17 13:10:07       28 阅读
  9. android binder如何实现异步

    2024-07-17 13:10:07       17 阅读