| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
这是题目: 
最大质因数 
13195的所有质因数为5、7、13和29。 
 
600851475143最大的质因数是多少? 
- a = 600851475143
 
 - b = 0
 
 - d = []
 
 - f = []
 
 - h = 0
 
 - for i in range(1,a):
 
 -     if a%i == 0:
 
 -         d.append(i)#把a的因数添加到d中
 
 - #接下来判断d中的元素是不是质数
 
 - for e in d:
 
 -     for g in range(1,e+1):
 
 -         if type(e/g) == int:
 
 -             h = e#当h的值改变则认为d的元素e不是质数
 
 -         else:
 
 -             pass
 
 -         if h == 0:#当h的值没有改变则认为d的元素是a的质因数
 
 -             f.append(e)
 
 - print(max(f))
 
  复制代码 
上面是我写的程序,当a的值小的时候会出来结果,但是如果a的值太大了就会出不来结果,是不是一直在运算? 
怎么改更好?
py大神 发表于 2017-12-9 21:47 
我也感觉是这样........ 
对了,e/g肯定是float 
你可以试试type(4/2)  
 
 
 |   
 
 
 
 |