水仙花代码

昨天晚上闲暇看到水仙花的视频,我自己也做了一个,python做起来还是蛮简单的,各位参考参考!

#!/usr/bin/env python3
# -*- conding:utf-8 -*-
# @Time: 2017/12/12 11:53
# @Author:Luke


def is_amstrong_number(n):
"""
:rtype: 是水仙花数就返回True,不是就False
:param n: 输入数字
:param x:是位数
:param a:是各个位数的立方
:param m:是每位上的数字
"""
x = 0
y = n
a = 0
while int(n) > 0:
n /= 10
x += 1
# 循环相加各个数字的立方和,注意for循环里面的m是浮点型,得整数化
for i in range(x):
m = (y % (10 ** (i + 1))) / (10 ** i)
a += int(m) ** x
if a == y:
return True
else:
return False


for i in range(100, 10000):
if is_amstrong_number(i):
print("水仙花数:%d" % i)

转载于:https://www.cnblogs.com/lzh-luke/p/8027155.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值