【问题标题】:Amstrong numbers in pythonpython中的阿姆斯特朗数字
【发布时间】:2022-06-15 22:48:10
【问题描述】:

我编写了一个程序来检查python中的数字是否为amstrong。但它不起作用。谁能看看这段代码并告诉我哪里出了问题。

# defining a power function. I am just defining my own power function for using it in my code.
def power(a,b):
    c = 1
    for i in range(b):
        c*=a
    return c

# taking user input
inp = int(input("enter a number :"));

# I am finding the length of the input here. So here i am converting the input to a string  and finding the length using len function. Then converting it to a number again. 
inp = str(inp);
len = len(inp);
inp = int(inp);

add = 0;

# storing the input in another variable.
inpu = inp;

while(inp!=0):
    amst = inp%10;
    add+=power(amst,len);
    inp = inp//10;


if inp==inpu:
    print("It is an amstrong number");
else:
   print("It is not amstrong number");

在这里,当我输入 123(不是 amstrong 数字)时,它正在打印“它不是 amstrong 数字”,但是当我输入 153(amstrong 数字)时,输出再次相同。不仅适用于 153,而且适用于所有 amstrong 数字。为什么是这样。这是因为我的幂函数吗?请回复

【问题讨论】:

  • 当你使用调试器时,first 行是什么?
  • 我认为这个问题不需要使用power

标签: python


猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-11-13
  • 2022-12-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-03
相关资源
最近更新 更多