古典问题:兔子繁殖问题 - 计算并输出兔子数量和增长比
思路:根据题目描述,第n个月的兔子对数是第n-1个月的兔子对数加上第n-2个月的兔子对数,即f(n) = f(n-1) + f(n-2),其中f(1) = f(2) = 1。另外,根据题目要求,需要计算前一个月与本月兔子数的比值,因此需要记住上一个月的兔子对数。最后,输出兔子对数和比值即可。
代码:
def rabbit_count(month):
if month <= 2:
return 1
else:
return rabbit_count(month - 1) + rabbit_count(month - 2)
month = int(input())
prev_count = rabbit_count(month - 1)
current_count = rabbit_count(month)
ratio = prev_count / current_count
print(f'{current_count} {ratio:.3f}')
function rabbitCount(month) {
if (month <= 2) {
return 1;
} else {
return rabbitCount(month - 1) + rabbitCount(month - 2);
}
}
const month = parseInt(prompt());
const prevCount = rabbitCount(month - 1);
const currentCount = rabbitCount(month);
const ratio = prevCount / currentCount;
console.log(`${currentCount} ${ratio.toFixed(3)}`);
该代码使用递归的方式计算兔子数量,并输出该月的兔子数量以及前一个月与该月兔子数量的比值。该代码可以方便地修改和扩展,以适应不同的兔子繁殖规则和计算需求。
原文地址: https://www.cveoy.top/t/topic/ojDu 著作权归作者所有。请勿转载和采集!