Python实现水仙花数

2023-01-31 02:01:18 python 水仙花

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)《摘自百度百科》。

下面给出三位数水仙花python代码实现::

# 循环遍历出所有三位数
for tmp in range(100, 1000):
    # 取余找出个位数
    a = tmp % 10
    # 求商取整找出百位数
    b = int(tmp / 100)
    # 通过求商取整找出百位和十位,然后求商找出十位
    c = int(tmp / 10) % 10
    if tmp == a**3 + b**3 + c**3:
        print("%d" %tmp)

有兴趣可以百度百科了解下<https://baike.baidu.com/item/%E6%B0%B4%E4%BB%99%E8%8A%B1%E6%95%B0/2746160?fr=aladdin>;
Python实现水仙花数

相关文章