求助第10讲第一题作业
编写一个程序,求 100~999 之间的所有水仙花数。如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数
以下是我写的代码,用地板除从100到999分别把百、十、个位数求出来,求大神指点哪里错了{:10_282:}
numble = 100
while number <= 999:
a = numble // 100
b = (numble - a * 100) //10
c = (numble - a * 100 - b * 10)
if numble == (a ** 3) + (b ** 3) + (c ** 3):
print(numble)
本帖最后由 zltzlt 于 2020-8-1 16:22 编辑
1. 你的变量名拼错了,numble 和 number
2. 每次循环 number 都应该累加 1
代码帮你改好了:
numble = 100
while numble <= 999:
a = numble // 100
b = (numble - a * 100) //10
c = (numble - a * 100 - b * 10)
if numble == (a ** 3) + (b ** 3) + (c ** 3):
print(numble)
numble += 1
你的number 写成了 numble 了,而且你 while 循环里 忘记将 number 增加,导致死循环
number = 100
while number <= 999:
a = number // 100
b = (number - a * 100) // 10
c = (number - a * 100 - b * 10)
if number == (a ** 3) + (b ** 3) + (c ** 3):
print(number)
number += 1 numble = 100
while numble <= 999:
a = numble // 100
b = (numble - a * 100) // 10
c = (numble - a * 100 - b * 10)
if numble == (a ** 3) + (b ** 3) + (c ** 3):
print(numble)
numble+=1 zltzlt 发表于 2020-8-1 16:20
1. 你的变量名拼错了,numble 和 number
2. 每次循环 number 都应该累加 1
感谢感谢{:10_254:}
页:
[1]