有一头母牛,它每年初生一头小母牛,每头小母牛从第四个年头起,每年年初也生一头小母牛,那么第二十年时

2025-04-24 18:26:00
推荐回答(2个)
回答1:

这道题感觉有一点歧义,“第二十年时”,我这里理解为“第二十年年初,母牛生产过后”进行解题。
设置两个变量
cow =》可以生产的母牛
little_cow[] =》小母牛
1:每年年初,新增小母牛等于可以生产的母牛
2:当小母牛长到4岁,升级为大母牛,并在该年年初可以生产
用python编写代码如下:
#!/usr/bin/Python
cow = 1
little_cow = []

for i in range(1,20+1): //20年
if len(little_cow):
for j in range(0,len(little_cow)):
little_cow[j] = little_cow[j]+1 //小母牛每年长一岁
if little_cow[j] == 4: //当小母牛4岁时,升级成大母牛
cow = cow + 1

new_little_cow = cow //这三句是把年初新产的牛加入数组
for n in range(0,new_little_cow):
little_cow.append(1)
all_cow = cow //计算总牛数
for i in little_cow: //总牛数=可以生产的母牛+小于4岁的小母牛
if i <4:
all_cow = all_cow +1
print("The nume of cows:",all_cow)

回答2:

排出前几年牛的情况
第一年 第二年 第三年
2 3 4
第四年 第五年 第六年
6 9 13
19 28 41
第一年牛会生一头小牛,所以第一年结束时有2头,第二年结束时有3头,第三年结束时有4头,这没有问题吧
第四年起,第一年的小牛可以再生小牛,所以为6,第五年时,第二年的小牛也可以再生小牛,所以为9,第六年时,第三年的小牛也可以再生小牛,规律是:当年的牛的数量等于三年前的牛的数量加前一年的牛的数量(因为3年前的牛都可以再生小牛,小牛是多出来的),以此类推.这道题是计算机语言中常考的一道题,楼主慢慢算吧,不懂追问