刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
这是一个关于角谷猜想的编程题目。根据题目描述,我们需要完善一个递归函数,该函数接受一个整数n和一个计数器cnt,当n变为1时,打印计数器并返回,否则根据n的奇偶性进行相应的操作并递归调用函数。
对于划线处的代码解析如下:
① if n == 1:
:这是判断终止条件,当n变为1时,打印计数器并返回。因为题目要求得到自然数1时的计算次数,所以这里需要判断n是否等于1。
② fun(n, cnt)
:这是递归调用函数的部分,当n为偶数时,将n除以2后,需要再次调用函数并更新计数器。
③ else: n *= 3 + 1
:这是处理奇数n的部分,当n为奇数时,将其乘以3再加1后,再次递归调用函数。这是根据角谷猜想的规则进行的操作。
④ fun(5, 0)
:这是初始调用函数的部分,输入整数为5,初始计数器为0。因为初始时还没有计算次数,所以计数器初始值为0。
本文链接:38.角谷猜想所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!