题目:某三位数等于它每一位上数字的立方之和,就称这个数为水仙花数。如(153=立方1+立方5+立方3),请你编写程序,找到1000以内所有的水仙花数。
我们可以利用计算机运行速度快的特点,从100开始到999,一个一个去判断是否满足水仙花数的条件,如果满足就显示出来。
开始写bug~
n=100
while n<=999:
a=n//100 #百位上的数
b=(n-a*100)//10 #十位上的数
c=n%10 #个位上的数
if n==a**3+b**3+c**3:
print('水仙花数:{}'.format(n)) #打印
n+=1 #n自增1
小知识:计算机编程解决问题的策略有很多,其中之一就是枚举法。枚举法的策略是在有限的范围内,将所有可能的解都列举出来,都试一试,如果符合要求就找到了答案,当然枚举法不是万能的,如果这个范围是无穷的,就没法进行计算了。
看CSDN主(UP主是bilibili上的,那我就来个CSDN主)这么辛苦的肝文章,你们不三连吗?(bushi