阿姆斯特朗数(Armstrong number)是指一个n位正整数,它的每个位上的数字的n次幂之和等于它本身。以下是一个编写程序打印1到1000之间的所有阿姆斯特朗数的示例代码:
# 定义一个函数来判断一个数字是否是阿姆斯特朗数
def is_armstrong(number):
# 将数字转换为字符串,并获取数字的位数
num_str = str(number)
num_digits = len(num_str)
# 计算每个位上数字的n次幂之和
sum_of_digits = 0
for digit in num_str:
sum_of_digits += int(digit) ** num_digits
# 如果计算结果等于原数字,则是阿姆斯特朗数
if sum_of_digits == number:
return True
else:
return False
# 打印1到1000之间的所有阿姆斯特朗数
for i in range(1, 1001):
if is_armstrong(i):
print(i)
运行以上代码,将打印出以下阿姆斯特朗数:
1
2
3
4
5
6
7
8
9
153
370
371
407