测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A43627. 素数是只能被 1 和本身整除的正整数,因式分解就是将一个正整数分解成若干个素数相乘的形式。用户从键盘输入小于 1000 的整数,对其进行因式分解,例如:10=2*5,60=2*2*3*5。完善程序代码。#用户从键盘输入小于 1000 的整数,对其进行因式分解。例如10=2*5,60=2*2*3*5。x = input('Please input an integer less than 1000…

填空题 困难

题目描述

素数是只能被 1 和本身整除的正整数,因式分解就是将一个正整数分解成若干个素数相

乘的形式。用户从键盘输入小于 1000 的整数,对其进行因式分解,

例如:10=2*5,60=2*2*3*5。

完善程序代码。

#用户从键盘输入小于 1000 的整数,对其进行因式分解。例如10=2*5,60=2*2*3*5。

x = input('Please input an integer less than 1000:')

x = int(x)

t = x

①

result = []

while True:

    if t == 1:

        break

    if t % i == 0:

        result. ②

        t = t/i

    else:

        ③

s=''

for i in result:

    s= ④

s= ⑤

print( x,'=',s)

参考答案

x = input('Please input an integer less than 1000:') x = eval(x) t = x i = 2 result = [] while True: if t == 1: break if t % i == 0: result.append(i) t = t/i else: i+=1 s='' for i in result: s=s+str(i)+'*' s=s[:-1] print( x,'=',s)

答案解析

① i = 2 (2 分)

② append(i) (2 分)

③ i+=1 (2 分)

④ s+str(i)+'*'(2 分)

⑤ s[:-1] (2 分)

上一题 下一题