華為機試HJ6質數因子
題目:
按照從小到大輸出給定數值的質數因子
想法:
遍歷判斷從小到大的數值是否是給定數值的質數因子,是就直接輸出,該方法輸出的數值已經排序好了
import mathinput_number = int(input())# 循環判斷提取所有是2的質數因子
while input_number % 2 == 0:input_number = input_number // 2print(2, end=" ")# 判斷從3開始的奇數是否是質數因子
for i in range(3, int(math.sqrt(input_number))+1, 2):while input_number % i == 0:print(i, end=" ")input_number = input_number // iif input_number > 2:print(input_number)