网上看到别人问,思考了下,写的程序,这里分享下:
问题:
一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
假设初始有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
编译运行方法,习语言编辑器新建一个文件,复制这里所有文字内容(可以包含本行内容),点编译连接,再点运行。
问题:
一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
假设初始有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
编译运行方法,习语言编辑器新建一个文件,复制这里所有文字内容(可以包含本行内容),点编译连接,再点运行。