所谓“厉害”数,是指其各位数字的5次方等于该数本身。编程输出所有长度不超过n位的正整数中的“厉害”数。 例如:4151=4 5 +1 5 +5 5 +1 5 输入格式: 一个整数n (1<=n<=6) 输出格式: 每行一个“厉害”数
时间: 2024-10-11 11:04:56 浏览: 44
易语言取指定位数的随机数
要编写一个程序来找出所有长度不超过n位的“厉害”数,我们需要遍历所有可能的整数,对每个数的每一位进行5次幂运算,然后检查是否等于原数。这里我们可以使用Python的列表推导式和`join()`函数来构建字符串和比较。
下面是Python代码示例:
```python
def find_powerful_numbers(n):
powerful_nums = []
for i in range(1, int(10 ** n) + 1): # 遍历1到n位数范围内的所有整数
num_str = str(i)
power = sum(int(digit) ** 5 for digit in num_str) # 计算每位数字的5次方之和
if power == int(num_str): # 如果和等于原数,就添加到结果列表中
powerful_nums.append(int(num_str))
return powerful_nums
# 输入示例
n = int(input("请输入n(1 <= n <= 6): "))
powerful_numbers = find_powerful_numbers(n)
for num in powerful_numbers:
print(num)
```
阅读全文