python – 如何手动确定复杂递归函数的输出
这是有问题的递归代码:
虽然我不确定这个函数应该做什么,我们应该手动找到x = trace(1,4)的输出和x的值(意味着我们不能使用idle来帮助我们). 一段时间后,我确定该函数将打印1和12.25,这将是将x分配给trace(1,4)时的输出. 但是,我不知道如何确定X的值是什么.虽然答案是-91.75,但我并不知道它是如何得出的(尽管我知道如何,这需要很长时间才能得出这个答案,而且我不确定我们如何才能快速提出在短时间内解决问题,例如在编写考试时). 在此先感谢您的帮助! 最佳答案
首先,我作弊.有了我的胸部,这里有一些指示:
该功能绝对不适用于Python 3!原因是/操作符.在Python 2中,它导致Python3中的整数产生浮点数.所以请记住这个前提条件是我的解决方案: 功能并不复杂.每个变量的每个数据类型都是整数! m将永远是一个整数. x是30.递归级别为3,等于对函数的七次调用(包括第一次).以下是你如何做这些事情:拿一些纸和一支笔,然后写下每一步. >输入为:a = 1且b = 4,导致函数中的else部分…到目前为止没有输出. m计算为(1 4)/ 2.在我的书中是2.5.但这被四舍五入到2,因为我们有整数.然后递归以两个调用(1,2)和(3,4)开始 关于函数的作用:它总结了a和b之间所有整数的所有平方. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |