问题描述 153是一个非常特殊的数,它等于它的每位数字的立方和,即153=111+555+333。编程求所有满足这种条件的三位十进制数。 输出格式 按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。
for i in range(100,1000):
a = str(i)[0]
b = str(i)[1]
c = str(i)[2]
A = int(a)**3
B = int(b)**3
C = int(c)**3
if i == A+B+C:
print(i)
因为只是三位十进制数 循环遍历转字符串取列表下标进行三次方相加判断即可
更简洁的
for i in range(100,1000):
if int(str(i)[0])**3 + int(str(i)[1])**3 + int(str(i)[2])**3 == i:
print(i)
除法计算的
for i in range(100,1000):
a = int(i/100)
b = int((i/10)%10)
c = int(i%10)
A = a*a*a
B = b*b*b
C = c*c*c
if i == A+B+C:
print(i)