你好,同小白!
while之后就是一个自循环,temp不变成0就一直循环。目的就是将个位、十位和百位数的立方和相加。
带入一个例子说明吧:
当i=112时,temp=i=112, temp%10是112除以10的余数,也就是2,这一步是取出个位数,然后再**3,是将个位数立方,并且存在sum这个值中。
然后将112地板除以10,结果就是11,这时候temp也就变成了=11,并且因为还不是0继续带入while循环:
当temp=11时, temp%10是11除以10的余数,也就是1,这一步是取出十位数,然后再**3,是将十位数立方,并且加上之前个位数的立方值存在sum这个值中。
然后将11地板除以10,结果就是1,这时候temp也就变成了=1,并且因为还不是0继续带入while循环:
当temp=1时, temp%10是1除以10的余数,也就是1,这一步是取出百位数,然后再**3,是将百位数立方,并且加上之前个位数的立方值和十位数的立方值存在sum这个值中。
然后将1地板除以10,结果就是0,这时候temp也就变成了=0,并且因为是0所以跳出了while循环:
至此,sum就按照要求变成了个位十位和百位数字的立方和,再和原数i进行比较~如果相同就打印,不同则i=i+1,返回for循环
这就是整个循环中的一个例子~希望你能明白
小白想升级。希望能被采用,谢谢!