Python实现三位数水仙花数打印:while与for循环详解

温以宁
温以宁
发布时间:2026-10-13 | 5人浏览过
原创

本文详细介绍Python中如何打印所有三位数水仙花数。水仙花数指各位数字立方和等于自身的三位数。文章分别通过while循环和for循环两种方法实现,展示具体代码逻辑与执行过程,帮助开发者理解基础循环结构与数学判断在Python中的应用。

首先,我们需要明确水仙花数的定义。

水仙花数(Narcissistic number),也称作超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number)。这类数字特指一个 3 位数,其各个位上的数字的 3 次幂之和恰好等于该数本身(例如:1^3 + 5^3 + 3^3 = 153)。

判断条件为:该数的每个位上的数字的 3 次幂之和等于它本身(例如:1^3 + 5^3 + 3^3 = 153)。

使用 python-while 循环实现

a = 100
e = 0
while a < 1000: #三位数中
  b = a % 10  #个位数
  c = a // 10 % 10  #十位数
  d = a // 100   #百位数
  if b ** 3 + c ** 3 + d ** 3 == a: #判断条件
    e += 1
    print(a) #打印出三位数中所有的水仙花数
  a += 1
print(e) #打印了三位数中所有的水仙花的次数

使用 python-for 循环实现

e = 0
for a in range(100,1000):
  b = a % 10  #个位数
  c = a // 10 % 10  #十位数
  d = a // 100   #百位数
  if b ** 3 + c ** 3 + d ** 3 == a: #判断条件
    e += 1
print(e) 

以上内容分享了利用 Python 循环打印所有三位数水仙花数的具体实例,希望能为读者提供有价值的参考,并欢迎大家继续支持本站获取更多技术内容。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表