1054127694 发表于 2021-4-4 15:24:11

水仙花

题目:7-1 求某一范围内的水仙花数 (10 分)
求某一范围内所有的水仙花数。
水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)

输入格式:

在一行输入两个数

输出格式:

要求每行输出一个满足条件的数

输入样例:

在这里给出一组输入。例如:

5 1000
输出样例:

在这里给出相应的输出。例如:

153
370
371
407
代码:
m,n=map(int, input().split())
for i in range(m,n):
    a=int(i/100);b=int(i/10)%10;c=i%10
    if a*a*a+b*b*b+c*c*c==i:
      print(i)
明明python里可以跑为什么pta里就是不行
图片上传不了

1054127694 发表于 2021-4-4 15:25:09

不要第一行代码 直接把5 1000填入range里也不行 都是部分答案正确

yayc_zcyd 发表于 2021-4-4 16:05:53

试试这个
if __name__ == "__main__":
    print("result is: ")
    for n in range(100, 1000):
      hun = n // 100
      ten = (n - hun * 100) // 10
      ind = n % 10
      m = hun**3 + ten**3 + ind**3
      if n == m:
            print("%d \t" %n, end="")

逃兵 发表于 2021-4-4 16:35:10

试试改成for i in range(m,n+1)

1054127694 发表于 2021-4-4 16:49:25

yayc_zcyd 发表于 2021-4-4 16:05
试试这个

不行 是要输入数字 而不是直接给定

1054127694 发表于 2021-4-4 16:50:20

逃兵 发表于 2021-4-4 16:35
试试改成for i in range(m,n+1)

试过 也不可以 应该就是要输入1000 不是1001

TC_DHL 发表于 2021-4-7 17:47:45

有些带点交互的不一定就是代码的问题
你可以在这里提交代码进行测验,而且可以分步看运行的情况:点击访问<pythontutor>



希望可以帮到你
页: [1]
查看完整版本: 水仙花