一、问题描述
求1000以内所有的水仙花数?
水仙花数判断条件
水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:13 + 53 + 3**3 = 153)。
逻辑语句: i == a ** 3 + b ** 3 + c ** 3
二、代码
i = 100
a = 0 # 百位数
b = 0 # 十位数
c = 0 # 个位数
number =0
print('1000以内水仙花数:')
while i < 1000:
a = i //100 #整除获取百位数
b = (i - a *100 ) // 10 #整除获取十位数
c = (i % 10) # 取余获取个位数
if i == a ** 3 + b ** 3 + c ** 3 :
print(i) #打印是水仙花的数字
i += 1 #循环增量