水仙花数是指在三位数的百、十、个位分别立方的和等于这个数,如153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 。下面,我们就用Python编一个程序来帮我们找水仙花数,不然用手算也太麻烦了,程序如下:
#首先,把程序初始化
s = 99
s1 = 0
s2 = 0
a = 0
a1 = 0
b = 0
b1 = 0
c = 0
#在999(900 + s 的99)以内寻找水仙花数
for i in range(900):
s = s + 1
s2 = s
#第一步,提取出百位
a = s//100#双斜杠//是整除的意思
a1 = a
a = a * 100
#减去百位,剩下十位、个位
s = s - a
# 第二步,提取出十位
b = s//10
b1 = b
b = b*10
s = s - b
#剩下的就是个位
c = s
#总和
s1 = a1 ** 3 + b1 ** 3 + c**3
s = s2
#如果等于,那就打印那个数
if s == s1:
print(str(s1) + '是水仙花数.')
是不是很简单呢?我还编了另一个程序来找水仙花数:
for a in range(0,10):
for b in range(0,10):
for c in range(0,10):
t = a**3+b**3+c**3
s = 100*a+10*b+c
if t == s:
print(str(s)+' 是水仙花数')
这个就非常简单了,我就不做解释了。
如果想了解更多关于水仙花数的知识,就在下面网站中看看吧
水仙花数
点个赞吧!(^ _ ^)
微信公众号: