zhanghuai 发表于 2020-11-23 21:31:24

求大佬此段代码怎么理解

for i in range(100, 1000):
    sum = 0
    temp = i
    while temp:
      sum = sum + (temp%10) ** 3
      temp //= 10         # 注意这里要使用地板除哦~
    if sum == i:
      print(i)                              
零基础学python第九讲动动手第一题水仙花这个代码怎么理解啊求大佬

昨非 发表于 2020-11-23 21:35:56

本帖最后由 昨非 于 2020-11-23 21:48 编辑

<font color="red">[已解决]</font>pyO基础入门课后题 水仙花数
https://fishc.com.cn/thread-185079-1-1.html
(出处: 鱼C论坛)
python 有道题看不懂
https://fishc.com.cn/thread-185238-1-1.html
(出处: 鱼C论坛)

看看这俩帖子的答案

昨非 发表于 2020-11-23 21:36:45

for i in range(100, 1000):
    sum = 0
    temp = i
    while temp: #temp不为0时,进入循环
      sum = sum + (temp%10) ** 3#3次方在求和,和题目要求一样
      #第一次temp%10(取余10),得到temp的 的个位数(也就是最后一位)
      # 第二次得到temp的十位数(也就是当前的最后一位)
      # 第三次得到temp的百位(也就是最后一位)                  
      temp //= 10#地板除以10,得到temp的前两位(去掉最后一位)      
    if sum == i:
      print(i)
页: [1]
查看完整版本: 求大佬此段代码怎么理解