1 #题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
代码:
2 print(‘水仙花数为:‘) 3 for i in range(1,10): 4 for j in range(0,10): 5 for p in range(0,10): 6 if (i**3 + j**3 + p**3) == (i*100 + j*10 +p): 7 print(‘%d‘%(i*100 + j*10 + p))
运行结果:
[root@HK code_100]# python code_13.py 水仙花数为: 153 370 371 407 [root@HK code_100]#
代码解释:
2 print(‘水仙花数为:‘) 3 for i in range(1,10): #因为是求三位数的水仙花数,所以这个三位数的第一位不能为0,所以从1开始,遍历第一位数 4 for j in range(0,10): #遍历第二位数 5 for p in range(0,10): #遍历第三位数 6 if (i**3 + j**3 + p**3) == (i*100 + j*10 +p): #根据题目要求,选取符合要求的数字 7 print(‘%d‘%(i*100 + j*10 + p)) #格式化输出水仙花数
本文出自 “学习笔记” 博客,请务必保留此出处http://netsyscode.blog.51cto.com/6965131/1745180
原文:http://netsyscode.blog.51cto.com/6965131/1745180