2015-04-29 93 views
0

我对这个功课问题返回最低因子

那种挣扎定义下面的方法返回一个任意整数的最低因素。最低的因子是大于1的最小数目,它将均匀分配到参数中(这将是2或更高)。

这就是我所得到的。

def first_factor(n): 
    for num in range(1,n): 
     if n % num == 0: 
      return n 

所以我得到这只会返回素数如何返回最低数字? 谢谢

+2

您需要返回'num' – Kasramvd

+3

范围是否应该从2开始? –

+0

仍然无法正常工作 – YoungDanEn

回答

2

回报num而不是n也只迭代直到sqrt(n)(含),如果没有的因素小于或等于sqrt(n)那么这个数是素数。

+2

也从2开始迭代'num'。 –