编程求解-兔子繁殖问题
习语言吧
全部回复
仅看楼主
level 8
细雨言 楼主
网上看到别人问,思考了下,写的程序,这里分享下:
问题:
一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
假设初始有1对成年能繁殖的兔子,并且假设所有兔子都不死,那么一年后,两年后可以繁殖多少对兔子?
请编程求解。
分析: 1年=12个月,1年后 = 13月初
13月初兔子数=12月初兔子数+12月初能繁殖兔子数。
12月初兔子数=11月初兔子数+11月初能繁殖兔子数。
12月初能繁殖兔子数 = 11月初能繁殖兔子数+10月初新生兔子数。
11月初能繁殖兔子数 = 10月初能繁殖兔子数+9月初新生兔子数。
10月初新生兔子数 = 9月初能繁殖兔子数
9月初新生兔子数 = 8月初能繁殖兔子数
假设初始条件是1对能繁殖的兔子,则
1月初兔子数 = 1;
1月初繁殖兔子数 =1

#包含 “习语言系统.接口”
整数类型 某月初能繁殖兔子数( 整数类型 月份 );
整数类型 某月初新生兔子数( 整数类型 月份 ){
如果(月份<2)返回 0;
或者(月份==2)返回 1;
否则 返回 某月初能繁殖兔子数(月份-1);
}
整数类型 某月初能繁殖兔子数( 整数类型 月份 ){
如果(月份==1) 返回 1;
否则 返回 某月初能繁殖兔子数(月份-1)+ 某月初新生兔子数(月份-2);
}
整数类型 某月初兔子数( 整数类型 月份 ){
如果(月份==1) 返回 1;
否则 返回 某月初兔子数(月份-1)+ 某月初能繁殖兔子数(月份-1);

整数类型 主函数(整数类型 参数个数, 字符串类型 参数[] ){
格式输出("一年后兔子数=%整%行",某月初兔子数(13) )。
暂停()。
返回 0。
}

程序输出:
一年后兔子数=129
编译运行方法,习语言编辑器新建一个文件,复制这里所有文字内容(可以包含本行内容),点编译连接,再点运行。
2021年03月17日 12点03分 1
level 1
习语言还在维护更新吗?
2021年04月03日 20点04分 2

2021年04月06日 02点04分
level 2
好多年过去了,习语言还在更新呀
2021年04月07日 14点04分 3
level 1
如果问题真长这样,一个for写个斐波那契递推就解决了qwq
2021年07月05日 00点07分 4
1