python使用循环打印所有三位数水仙花数的实例

python0 2018-11-13

首先水仙花数是什么?

水仙花数(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)

相关推荐