1、
打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数(100-999),
其各位数字立方和等于该数本身。例如:153是一个"水仙花数",
因为153=1的三次方+5的三次方+3的三次方。
for num_ in range(100,1000):
str_a1 = str(num_)
if int(str_a1) == int(str_a1[0])**3 + int(str_a1[1])**3 + int(str_a1[2])**3:
print(int(str_a1))
2、
定义函数shuixianhua(n),n表示n位数。实现功能打印n位数中,
每一位的n次方之和与数字本身相等的数字。
例如shuixianhua(4),表示打印1000-9999中数字本身与数字每一位的4次方之和相等的数字。
如果n不是整数,提示:输入非数字
def shuixianhua(n:int):
if type(n) is not int:
print("输入非数字")
else:
list2 = []
list1= list(range(10**(n-1),10**n))
for i in list1:
str1 = str(i)
x = 0
for j in range(0,n):
x = int(str1[j])**n + x
if int(str1) == x:
list2.append(int(str1))
return list2
print(shuixianhua(3))