输入一个三位的整数,判断该数是否是水仙花数的Python代码
时间: 2023-05-22 10:00:43 浏览: 60
def is_armstrong(num):
"""
判断一个数是否是水仙花数
"""
# 将数字转换为字符串,计算位数
n = len(str(num))
# 初始化总和
total = 0
# 遍历每一位数字
for digit in str(num):
# 将每一位数字的n次方加入总和
total += int(digit) ** n
# 如果总和等于原数,则是水仙花数
if total == num:
return True
else:
return False
# 测试
num = int(input("请输入一个三位的整数:"))
if is_armstrong(num):
print("{}是水仙花数".format(num))
else:
print("{}不是水仙花数".format(num))
相关问题
从键盘输入一个三位整数,判断该数是不是水仙花数
好的,水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。那么,以下是判断一个三位数是否为水仙花数的代码:
```python
num = int(input("请输入一个三位整数:"))
# 分离出百位、十位、个位数字
a = num // 100
b = (num % 100) // 10
c = num % 10
# 判断是否为水仙花数
if a**3 + b**3 + c**3 == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
需要注意的是,这个代码中用到了整除运算符`//`和取模运算符`%`,它们可以帮助我们分离出三位数的百位、十位、个位数字。
输入一个三位整数,判断其是否为水仙花数
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153就是一个水仙花数,因为 $1^3+5^3+3^3=153$。
以下是Python代码实现:
```
num = int(input("请输入一个三位整数:"))
if num < 100 or num > 999:
print("输入有误!")
else:
a = num // 100
b = (num // 10) % 10
c = num % 10
if a**3 + b**3 + c**3 == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
运行程序后,输入一个三位整数,程序会判断该数是否为水仙花数并输出结果。