python_中国电子学会_五级_真题_因式分解

今天悦儿姐去看了一下考五级的成绩,发现过了,好开森,不过只打了80分。对于15天的学习五级,这已经很不错了。

于是看了看自己的错题,前面基础错了两道,后面的一道大题扣了我16分。(黑人问号脸)本悦儿不甘心,今天来破了它!

题目is this:素数是只能被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)

程序就是这么个程序,悦儿姐看了半天就看出了一点皮毛,准确来说是一撮毛。于是我当场就GAMEOVER了。毕竟本孩子还只10岁哎!

我去你管这玩应叫一般???

但是今天,我做出来啦!来分享一下。填空题步骤:1.审题 2.想自己的思路 3.读别人的思路 4.填空。好,我们一步一步来:

题,就是分解质因数嘛。自己的思路:把因数罗列出来,就2,3,5,7,11就差不多了,然后一点一点除。别人的思路:i代表一个又一个的自然数,用t去除,最后把每一次的i穿起来。

填空:

#用户从键盘输入小于1000的整数,对其进行因式分解。例如:10=2*5,60=2*2*3*5。
x = input(Please input an integer less than 1000:)  # 好家伙 考我英文?不就是输入1000以内的整数吗
x = int(x)  # 化成整数 
t = x   # x就是个样子 拿t霍霍
i = 2  # 最小的质数是2 不用我说吧
result = []  # 一个列表(存i用的)
while True:
    if t == 1:
       break
    if t % i == 0:  # 除它
       result.append(i)  # 存它
       t = t/i  # t的商保存在t里
    else:
       i+=1
s=
for i in result:
    s=  s+str(i)+*  # 穿串
s= s[:-1]  # 把最后的*删了
print( x,=,s)  # 打印出来

再见,下期再见

经验分享 程序员 微信小程序 职场和发展