python三位数水仙花数计算_【python例子】 python 计算1000以内的水仙花数

如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。

例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数

求1000以内的水仙花数(3位数)

网上这样的例子很多,总结3种常用的方法:

代码实现:

#coding:utf-8

#5**3 B表示5的3次方

#整除后取余数 1001%100

# 方法一:

for bai in range(1,10): #百位

for shi in range(0,10): #十位

for ge in range(0,10): #个位

i=bai*100+shi*10+ge

if i==bai**3+shi**3+ge**3:

print(i)

#方法二:将数字先转化为字符串,利用字符串索引找到百、十、个位的数字值

for i in range(100,1000):

s=str(i) #将数字转化为字符串

d=int(s[0]) #百位

e=int(s[1]) #十位

f=int(s[2]) #个位

if i==d**3+e**3+f**3:

print(i)

#方法三:

for i in range(100,1000):

#// 使用取模,分别取出百位数、10位数、个位数

#/// k = i // 10 % 10, 需要注意运算符号和运算顺序

a=i // 100 #整除获得百位数

b=i //10 % 10 # 或者b = (i % 100) // 10

c=i % 10 #个位数

if i == a ** 3 + b ** 3 + c ** 3:

print(i)

运行结果:

b_0_202007141540013499.png

注意:

range() 函数创建一个整数列表,是前闭后开。

例如range(1,10),取的是1,2,3,4,5,6,7,8,9

b_0_202007141540023156.jpg

本文地址:https://blog.csdn.net/u012106306/article/details/107318387

希望与广大网友互动??

点此进行留言吧!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值