这是有问题的递归代码:
def trace(a, b):
if (a > b):
return -1
elif (a == b):
print (a * a)
return a * a
else:
m = (a + b) / 2
return trace (a, m) + trace (m + 1, b)
x=trace(1,4)
Run Code Online (Sandbox Code Playgroud)
虽然我不确定这个函数应该做什么,但我们应该x=trace(1,4)手动找到x的值的输出(意思是我们不能使用idle来帮助我们).
一段时间后,我确定该函数将打印1和12.25,这将是分配x时的输出trace(1,4).
但是,我不知道如何确定X的值是什么.虽然答案是-91.75,但我并不知道它是如何得出的(尽管我知道如何,这需要很长时间才能得出这个答案,而且我不确定我们如何才能快速提出在短时间内解决问题,例如在编写考试时).
在此先感谢您的帮助!