如果一个n位正整数等于其个位数字的n次方之和,则称该数为阿姆斯特朗数。python根据描述fun编写函数,其功能为检测用户输入的数字是否为阿姆斯特朗数 def fun(num)
时间: 2024-03-02 22:52:56 浏览: 83
Python水仙花数编程题
好的,下面是根据描述编写的 Python 函数:
```python
def fun(num):
# 将数字转换为字符串,便于逐位取数
num_str = str(num)
# 计算数字位数
n = len(num_str)
# 初始化阿姆斯特朗数之和
sum = 0
# 遍历每一位数字
for d in num_str:
# 将数字转换为整型
digit = int(d)
# 计算该数字的 n 次方
power = digit ** n
# 将该数字的 n 次方累加到阿姆斯特朗数之和中
sum += power
# 判断阿姆斯特朗数之和是否等于原数
if sum == num:
return True
else:
return False
```
这个函数首先将输入的数字转换为字符串,然后计算该数字的位数,接着遍历每一位数字,计算该数字的 n 次方,并将它们累加到阿姆斯特朗数之和中。最后判断阿姆斯特朗数之和是否等于原数,如果是则返回 True,否则返回 False。
阅读全文