千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

首页 视频教程 培训课程 师资团队 技术干货 常见问题 面试题 职场就业 零基础学Python 行业资讯
【热点话题】 Python技术干货 Python学习教程 Python学习笔记 Python面试题 Python培训问答 Python培训机构哪些好 Python职场就业
当前位置:Python培训  >  Python学习教程  >  Python中水仙花数如何输出?

Python中水仙花数如何输出?

来源:千锋教育
发布人:syq
时间: 2022-12-01 17:20:40 1669886440

  所谓“Python中水仙花数”是指一个三位数,其各位数字立方和等于该数本身。用Python输出水仙花数,对于有面试需求或者对算法感兴趣的同学,是一定要掌握的,在面试过程中,面试官很大程度会让我们书写算法,比如冒泡排序、九九乘法表、水仙花数等,那该如何写呢?请看下文:

Python中水仙花数

  编程思路:首先利用for语句循环从100到999的所有数字,并且把它赋值给变量n;然后分解变量n,获取个位数k、十位数j和百位数i;最后判断i、j和k数的立方和是否等于n,如果等于,就使用“print(n)”语句输出即可。

  所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

  Python输出所有的水仙花数:

  for n in range(100,1000):

  i = n // 100

  j = n // 10 % 10

  k = n % 10

  if n == i ** 3 + j ** 3 + k ** 3:

  print (n)

  输出:

  153

  370

  371

  407

  程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

  第一行:因为水仙花数是一个三位数,所以我们就循环从100到999的所有数字,并且把它赋值给n

  for n in range(100,1000):

  第二行:用n整除100,得到的其实就是三位数的百位数字,将它赋值给i

  i = n // 100

  第三行:用n整除10,得到的是百位数和十位数组成的两位数,再用这个数除以10求余数,就得到了我们的十位数字,将它赋值给j

  j = n // 10 % 10

  第四行:用n除以10,求余数,得到的就是n的个位数数字,将它赋值给k,这个时候三位数n的百位、十位、个位数字,我们都已经得到,并且分别赋值给了i,j,k

  k = n % 10

  第五行:判断如果n等于它百位数字的立方+十位数字的立方+个位数字的立方,那么它就是水仙花数,这个时候,将满足条件的n打印出来,否则就进入下一个循环

  if n == i ** 3 + j ** 3 + k ** 3:

  注:本文部分文字和图片来源于网络,如有侵权,请联系删除。版权归原作者所有!此页面下方声明无效!

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

最新文章NEW

相关推荐HOT

更多>>
开班信息
北京校区
  • 北京校区
  • 大连校区
  • 广州校区
  • 成都校区
  • 杭州校区
  • 长沙校区
  • 合肥校区
  • 南京校区
  • 上海校区
  • 深圳校区
  • 武汉校区
  • 郑州校区
  • 西安校区
  • 青岛校区
  • 重庆校区
  • 太原校区
  • 沈阳校区
  • 南昌校区
  • 哈尔滨校区

14天品质课程免费学

10年以上业内强师带你蜕变精英

提交领取