本帖最后由 simplerjiang 于 2018-5-26 22:51 编辑
代码是由python写的。如果需要C的版本也可以提供。
编程最好的就是,你几乎不需要理解它怎么做的,只需要知道它步骤有哪些,
交给计算机去做就好了
def count(n):
m = 0
for i in range(n):
m += i+1
d = 2 * m - 1 #获得最大的奇数
n3 = n * n * n #获得n的立方
result = []
while 1:
if n3 - d < 0: #如果小于0了就错了,但其实不会错
return False
elif n3 - d == 0: #如果等于0,说明d是最后一个奇数
result.append(d)
return result #返回列表
else:
n3 = n3 - d #用奇数减去n的立方,并赋值给n3这个变量,以供下一个循环
result.append(d)
d = d -2 #奇数-2,赋值给d变量,作为下一个奇数,以供下一个循环
if __name__ == "__main__":
n = int(input("请输入一个整数"))
result = count(n)
n3 = n * n * n
print("%d == %d * %d * %d" % (n3,n,n,n))
n3_test = 0
for i in result:
if i == result[-1]:
print(i)
n3_test += i
break
print(i)
print("+")
n3_test += i
print('==')
print(n3_test) #这里我做了一个测试,计算这些奇数加起来是不是等于n的立方,其实是没必要的
|