python练手_13-所有水仙花数

# -*- coding:utf-8 -*-
# @Author: CH
"""
@project: python study
@time:
@detail:
@else: DO NOT STOP STUDYING!!!
"""
# 题目 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
#
# 程序分析 利用for循环控制100-999个数,每个数分解出个位,十位,百位。

for i in range(100,1000):
    s=str(i)        #取字符串
    one=int(s[-1])  #取这个三位数的最后开始数的一位    整数型
    ten=int(s[-2])  #取这个三位数的最后开始数的第二位
    hun=int(s[-3])  #取这个三位数的最后开始数的第三位
    if i == one**3+ten**3+hun**3:       #计算每位数的立方之和
        print(i)

你可能感兴趣的:(python练手_13-所有水仙花数)