我有检查这个问题,如果153是Narcissistic number,我不知道从哪里开始,请大家帮忙!
答案 0 :(得分:1)
一个简单的函数来解决
def check_is_narcis_number(your_number):
your_numbers = str(your_number)
power = len(your_numbers)
your_sum = 0
for number in your_numbers:
your_sum += pow(int(number), power)
if your_sum == your_number:
return True
return False
答案 1 :(得分:0)
所有你需要做的就是用水仙花数的定义。定义为here。因此,对于153(3位)的。 1 ^ 3 + 5 ^ 3 + 3 ^ 3 =153。是的,153是自恋数字。
在python中,您需要确定位数。就像我之前向您展示的那样,它只是遵循定义。您可以将数字读为字符串,然后使用len(number)来获取数字位数。
然后,可以使用int(数[0])将字符串转换为整数。因此,对于每个数字,您需要计算int(num [0])** len(number)。对第二个数字和第三个数字重复此操作,并将所有3个数字相加。 如果总和等于153则其在水仙花数。
只要把这个代码并且那你的答案。