问答详情
源自:4-5 Python之while循环

哪位大佬可以给我分析下这题答案吗?小的愚钝,看不明白sum*num和num+1这里是怎么循环的

num=1
sum=1
while num <= 10:
    sum=sum*num
    num=num+1
print(sum)

提问者:芒果不忙_ 2021-04-08 10:33

个回答

  • 随便你先生
    2021-08-24 11:44:49

    while num <= 10:  #此时num值为最开始设定的1,进入下面的循环,循环结束的条件是num小于等于10
        sum=sum*num   #算乘积
        num=num+1    #因为还不到10,所以需要加1,然后跳到第一行继续循环计算。等num的值到10了,就不会跳到第一行再循环了。结果就是最终输出结果。

  • ak_1
    2021-08-04 16:08:53


    开始循环的时候先运行sum = sum * num ,所以 sum = 1 * 1 =1

    然后运行 num = num +1 ,所以 num = 1 + 1 = 2

    然后这个while循环中的语句执行完了 ,这时num = 2,num <= 10 依然成立

    所以接着又一遍运行while循环中的语句:

    sum = 1*2 =2

    num = 2+1 =3

    直到num变成10,跳出循环,在这个过程中就实现了1*2*3*4.........*10

    最后把结果打印出来就好了

    新手一个 有不对的在座的大佬请多指教

  • 慕丝5551634
    2021-07-11 11:08:25

    num = 1
    ret = 1
    while num <= 10:
        print str(ret)+"*"+str(num)
        ret = ret*num
        num = num+1
    print ret

    输出

    1*1

    1*2

    2*3

    6*4

    24*5

    120*6

    720*7

    5040*8

    40320*9

    362880*10

    3628800


  • 芒果不忙_
    2021-04-08 11:05:10

    是从底往上循环?开始是num=num+1然后就是1+1=2,num就是2,然后循环sum=sum*num就是1*2=2,sum就是2.因为num是2,继续循环,就是num=2+1,num是3.然后sum=1*3.sum就是3.然后这样循环直到num循环到10后输出sum的结果.这样理解对吗?还有拿到题目我都不知道怎么定义num和sum的值啊。郁闷

  • weixin_慕神3571887
    2021-04-08 10:56:28

    while就是一个循环,只有不满足条件时,才会跳出循环;

    while num <= 10,里面num是while循环的条件,初始num = 1,while循环内部每循环一次,num = num +1,num值就会加1,相当于num从1,2,3,...,10,11,一直去while条件(while num <= 10)中判定num的值是否还满足条件,直到num = 11时,判断不满足了,就跳出了while循环;