鱼C论坛

 找回密码
 立即注册
查看: 31762|回复: 146

题目3:找出一个合数的最大质数因子

  [复制链接]
发表于 2015-10-8 16:32:56 | 显示全部楼层

def prime(x):
    is_prime = 1
   
    if x == 1:
     #   print('%d不是质数'%x)
        is_prime = 0
    else:
        for i in range(2,x):
            if x % i ==0:
                is_prime = 0
                break
    #    if is_prime == 1 :
    #        print('%d是质数'%x)
    #    else:
    #        print('%d不是质数'%x)
    return is_prime

def list_prime(x):
    s=[]

    for i in range(1,x+1):
        if prime(i) == 1:
            s.append(i)
    #print('%d'%x + '前的质数序列:%s'%str(s))
    return s
        


def last_prime(x):

    if prime(x) == 1:
        print('%d'%x+'的最大质数因子为:%d'%x)
    else:
        s1 = []

        for i in list_prime(x):
            if x % i == 0:
                s1.append(i)
        print('%d'%x + '的质数因子是:%s'%str(s1))
               
        print('%d'%x + '的最大质数因子是:%d'%(s1[len(s1)-1]))
   
=================================
发现自己写的好复杂呀,差距还是很大的和别人的代码!求指教
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-28 04:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表