2301_77186477 2023-03-31 01:33 采纳率: 100%
浏览 52
已结题

Python求质数问题

img


题目要求输入一个正整数n,在一行中输出前n个回文素数
排查下来感觉是质数部分出了问题
个人感觉是for i in range(2,n)这句有问题
但不知道怎么改

  • 写回答

4条回答 默认 最新

  • 阳光宅男xxb 2023-03-31 07:09
    关注

    你的错误主要是因为def定义的是函数,不能放在循环中,而是因为放在外面。代码修改如下,望采纳:

    import math
    
    
    def is_prime(n):
        if n < 2:
            return False
        for i in range(2, int(math.sqrt(n)) + 1):
            if n % i == 0:
                return False
        return True
    
    
    def palindrome(my_string):
        if len(my_string) == 1:
            return False
        else:
            if my_string == my_string[::-1]:
                return True
            else:
                return False
    
    
    a = int(input())
    
    n = 1
    while a > 0:
        if palindrome(str(n)) and is_prime(n):
            a = a - 1
            print(n, end=' ')
        n = n + 1
    
    
    

    运行结果:

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月4日
  • 已采纳回答 3月31日
  • 赞助了问题酬金15元 3月31日
  • 修改了问题 3月31日
  • 展开全部

悬赏问题

  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画