蓝桥杯水仙花数python
时间: 2023-10-13 11:20:34 浏览: 91
水仙花数是指一个n位数 ( n>=3 ),它的每个位上的数字的 n次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。以下是在Python中判断一个数是否为水仙花数的代码:
```python
num = int(input("请输入一个数字:"))
# 初始化变量
sum = 0
temp = num
# 计算每位数字的n次幂之和
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
# 判断是否为水仙花数
if num == sum:
print(num,"是水仙花数")
else:
print(num,"不是水仙花数")
```
请注意,此代码只能判断一个数字是否为水仙花数,并不能生成所有的水仙花数。
相关问题
水仙花数Python
水仙花数,也叫“阿姆斯特朗数”,是指一个 n 位数(n>=3),它的每个位上的数字的 n 次幂之和等于它本身。例如:153 就是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。
以下是Python代码实现水仙花数的判断:
```python
num = input("请输入一个三位数:") # 用户输入一个三位数
sum = 0 # 初始化变量 sum
for i in num:
sum += int(i) ** 3 # 计算每个位上的数字的三次方之和
if int(num) == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
你可以将上述代码复制到Python环境中运行,输入一个三位数,即可判断该数是否为水仙花数。
水仙花数 python
水仙花数(Narcissistic Number)是指一个三位数,其各位数字的立方和等于该数本身。在Python中,你可以用以下代码来检查一个数是否为水仙花数:
```python
def is_narcissistic_number(num):
# 将数字转换为字符串以便处理
str_num = str(num)
# 获取数字的位数
length = len(str_num)
# 如果位数不是3,那么它就不是水仙花数
if length != 3:
return False
# 计算各个位数的立方和
sum_of_cubes = sum(int(char) ** 3 for char in str_num)
# 如果立方和等于原数,那么它是水仙花数
return sum_of_cubes == num
# 示例使用
number_to_check = 153
if is_narcissistic_number(number_to_check):
print(f"{number_to_check} 是水仙花数")
else:
print(f"{number_to_check} 不是水仙花数")
阅读全文