📅  最后修改于: 2023-12-03 15:06:14.528000             🧑  作者: Mango
阿姆斯壮数也被称为自恋数或者自幂数,指的是一个n位数(n>=3),其各位数字的n次方之和等于该数本身。例如,153是一个阿姆斯壮数,因为1^3 + 5^3 + 3^3 = 153。
本文将介绍如何编写一个函数,用于寻找两个整数之间的阿姆斯壮数,并输出这些数。
is_armstrong_number(num)
,判断一个数是否为阿姆斯壮数。该函数实现如下:def is_armstrong_number(num):
n = len(str(num))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** n
temp //= 10
if num == sum:
return True
else:
return False
find_armstrong_numbers(start, end)
,寻找两个整数之间的阿姆斯壮数,该函数实现如下:def find_armstrong_numbers(start, end):
armstrong_numbers = []
for num in range(start, end+1):
if is_armstrong_number(num):
armstrong_numbers.append(num)
return armstrong_numbers
find_and_print_armstrong_numbers(start, end)
,同时寻找并输出阿姆斯壮数,该函数实现如下:def find_and_print_armstrong_numbers(start, end):
armstrong_numbers = find_armstrong_numbers(start, end)
if len(armstrong_numbers) == 0:
print("No Armstrong numbers found.")
else:
print(f"Armstrong numbers between {start} and {end} are:")
for num in armstrong_numbers:
print(num)
本文介绍了如何编写一个函数,用于寻找两个整数之间的阿姆斯壮数,并输出这些数。通过实现 is_armstrong_number(num)
函数和 find_armstrong_numbers(start, end)
函数,可以找到所有的阿姆斯壮数,并使用 find_and_print_armstrong_numbers(start, end)
函数进行输出。