求(100,1000)水仙花数
为什么这个程序没有办法输出结果???i=100
while i <1000:
f=i//100
s=(i-f)//10
t=i-f-s
if i==pow(f,3)+pow(s,3)+pow(t,3):
print(i)
i+=1 你分离的数据不对,你随便代入一个即知 for i in range(100, 1000):
hundred = i//100 # 百位
ten = (i//10)%10 # 十位
one = i%10 # 个位
if i == (pow(hundred, 3) + pow(ten, 3) + pow(one, 3)):
print(i) 本帖最后由 yzzc 于 2022-4-18 09:02 编辑
i=100
while i <1000:
f=i//100 //取百位
s=(i-f*100)//10 //取十位
t=i%10 //取个位
if i==pow(f,3)+pow(s,3)+pow(t,3):
print(i)
你的s=(i-f)//10取的十位数不对 i=100
while i < 1000:
f=i//100
# print(f)
s =(i//10)-(f * 10)
# print(s)
# # s=(i-f)//10#这一步求的是三位数减去一个个位数之后除10求整,其实求的还是百位上的数字
# # t=i-f-s#这一步求的是一个三位数减去2个1位数,还是一个三位数。
t = i % 10
# print(t)
if i == (pow(f,3)+pow(s,3)+pow(t,3)):
print(i)
i+=1
#你的整体计算方法有问题。 谢谢大家,明白啦
页:
[1]