小羊 2023-03-27 22:27 采纳率: 100%
浏览 220
已结题

如何判断一个数是否为超级素数

要判断一个数是否为超级素数
就是一个素数去掉一位,去掉两位甚至更多位过后它都是一个素数。
用while和range去做。
有一个prime好像
那个是啥意思

  • 写回答

7条回答 默认 最新

  • 社区专家-Monster-XH 2023-03-27 22:38
    关注

    prime就是素数,2,3,5,7,11,13,17这种。

    img

    def is_prime(n):
        """判断一个数是否为素数"""
        if n < 2:
            return False
        for i in range(2, int(n ** 0.5) + 1):
            if n % i == 0:
                return False
        return True
    
    
    def is_super_prime(n):
        """判断一个数是否为超级素数"""
        # 判断原数是否为素数
        if not is_prime(n):
            return False
    
        # 将数字转换为字符串
        str_n = str(n)
        length = len(str_n)
    
        # 从右往左去掉一位,判断是否为素数
        for i in range(length):
            if not is_prime(int(str_n[:length - i])):
                return False
    
        return True
    
    
    # 测试
    num = int(input("请输入一个数字:"))
    if is_super_prime(num):
        print(num, "是超级素数")
    else:
        print(num, "不是超级素数")
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(6条)

报告相同问题?

问题事件

  • 系统已结题 4月5日
  • 已采纳回答 3月28日
  • 创建了问题 3月27日

悬赏问题

  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)