水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=1 3 +5 3 +3 3 。输入一个数,判断这个数是否为水仙花数
时间: 2023-11-15 10:00:05 浏览: 90
水仙花数是指一个 n 位正整数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身;用熟悉的语言实现一个函数sxhs
一个数如果是水仙花数,则它的每个位上的数字的N次幂之和等于它本身。因此,我们可以按照以下步骤判断一个数是否为水仙花数:
1. 将这个数按位拆分,得到每个位上的数字。
2. 对每个数字进行N次幂运算,并将结果相加。
3. 判断相加的结果是否等于原数,如果相等,则这个数是水仙花数,否则不是。
下面是判断一个数是否为水仙花数的Python代码:
```
def isNarcissisticNumber(num, n):
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** n
temp //= 10
if sum == num:
return True
else:
return False
```
其中,num是要判断的数,n是位数。如果这个函数返回True,则说明这个数是水仙花数,否则不是。
阅读全文