【Python练习题 009】 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

----------------------------------------------------------------------

这题也是送分题,只要能把任意三位数的百位、十位、个位拆解出来就好办了。思路:将任意3位数除以100再向下取整,即可得到百位数。将这个3位数减去(百位数*100),即可去掉百位数,然后除以10再向下取整,即可得到十位数。将这个3位数除以10再取整再乘以10(得到整几百几十的数字),然后拿这个3位数减去这个数字,即可得到个位数。代码如下:

import math

for i in range(100, 1000):
x = math.floor(i/100) #获得百位数
y = math.floor((i - x*100)/10) #获得十位数
z = i - math.floor(i/10) *10 #获得个位数
if i == x**3 + y**3 + z**3:
print(i, end=', ')

输出结果如下:

153, 370, 371, 407

++++++++++++++++++++++++++++++++++++++

题目出处:编程语言入门经典100例【Python版】

最新文章

  1. vmware里面的名词 vSphere、vCenter Server、ESXI、vSphere Client
  2. hibernate的基本xml文件配置
  3. poj3581
  4. python数据结构与算法——图的最短路径(Dijkstra算法)
  5. node.js在windows环境下的安装
  6. PHP替换,只替换匹配到的第一个
  7. .NET Async/Await 最佳实践
  8. mysql--存储过程(入门篇)
  9. K-means算法[聚类算法]
  10. ViewPager控件的Demo
  11. IPv4子网掩码回顾
  12. Beta第五天
  13. [LeetCode] Find Pivot Index 寻找中枢点
  14. Java代码自动部署
  15. iOS.CocoaPods.0
  16. High accuracy voltage regulator
  17. 我用Xamarin开发android应用,应用在真机上一打开就退出了
  18. Repeater的j简单使用
  19. [leetcode]426. Convert Binary Search Tree to Sorted Doubly Linked List二叉搜索树转有序双向链表
  20. 使用CSS3的“transition ”属性控制长宽度的缓慢变化

热门文章

  1. 最强云硬盘来了,让AI模型迭代从1周缩短到1天
  2. Event loop详解(包含Node端)
  3. 启用和禁用warning
  4. PlayerPrefs
  5. unity 模板测试 详解
  6. 入门的艰难——关于LR的使用
  7. Unity Plugins的使用方法
  8. HTTP协议中的提交方式和解释POST、GET、HEAD、PUT等
  9. Fabric1.4 kafka共识的多orderer集群
  10. PostgressQL