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