python使用函数实现水仙花数?
答:首先要明白水仙花数的定义,它是指一个三位数,它的每个位上的数字的三次幂之和等于它本身。
所以问题就转化为我们如何将三位数的个位、十位和百位都表示出来。然后再遍历100~999的每一个数字去判断其是否为水仙花数。
具体代码如下所示。
最终的运行结果如下,水仙花数总共有4个,具体如图片所示。
关于Python求解水仙花数的问题
i=n/100是求百位上的数字,如123除以100就等于1j=(n/10)%10是求十位上的数字,如123除以10等于12,再除以10取余数就等于2k=n%10是求个位上的数字,如123除以10取余数就等于3
我是问,用这个代码的前提下改为range(1000,10000)为何就计算不出1000-9999的水仙花数了呢
哪位高手帮忙写一下有关于水仙花数的程序在所有的三位数种,如果该数
Private Sub form_click()
Dim a, b, c, i As Integer
For i = 100 To 1000
a = i \ 100 '百位上的数
b = (i - a * 100) \ 10 '十位上的数
c = i mod 10 '个位上的数
If a ^ 3 + b ^ 3 + c ^ 3 = i Then
Print i
End If
Next i
End Sub
结果有5个,其中1000,a=10, b=0, c=0
10*10*10 + 0 =1000
试题难度:难度:偏易试题类型:解答题试题内容:((10分)求10?
END----------------
python 关于计算水仙花数 的问题
temp%10 分离出 每个位的数字,从个位开始
temp //= 10 得到剩余的部分
python输入一个数,判断是不是水仙花数
num = int(input("请输入一个三位数子:"))
gw = num%10 #取个位数
sw = num%100//10#取百位数
bw = num//100 #取百位数
total = gw ** 3 + sw ** 3 + bw ** 3
#print(total)
if num == total:
print("该数字是一个水仙花数")
else:
print("不是水仙花数")