python中怎么对一个数进行因式分解?

1、Python因式分解代码:

import time
# 对一个数进行因式分解
def factorization(num):
  factor = []
  while num > 1:
    for i in range(num - 1):
      k = i + 2
      if num % k == 0:
        factor.append(k)
        num = int(num / k)
        break
  return factor
st = time.perf_counter()
print(factorization(707829217))
et = time.perf_counter()
print("用时:", et - st)

2、因式分解思路:

假定要分解的整数为m

1、首先用while循环判断m是否大于1;

2、如果m>1再用for循环找到m的最小因数n,

用append()把最小因数添加到factor数组中;

3、把m/n赋给m,继续执行第二步;

4、直到m不大于1,返回数组factor。

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » python中怎么对一个数进行因式分解?