数学建模社区-数学中国
标题:
经典兔子繁殖问题的简单数学建模过程
[打印本页]
作者:
佛自业障
时间:
2018-11-1 10:46
标题:
经典兔子繁殖问题的简单数学建模过程
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
8 ?# l/ x0 G" h( g
解:由题意,设每个月的兔子总对数为f(n) ,(n = 1,2,3…)
0 O1 R1 E! C+ ] u5 w
6 ?4 M# z2 G7 z2 c
其中 f(1) = f(2) = 1 (对)
2 f# y& a4 E" }2 S, s. \ X
* j! p! f+ r4 I8 G: M' a1 V
: w p1 q$ S4 g- ?/ s( T
0 j* R1 p* F4 k6 m, m, D
从第3个月起,每个月兔子的总数f(n) 可以分为:
: w+ Q5 _) W- p0 f6 M
1 ~" n5 c1 \6 [) B
第n新出生的兔子 f(newN)
, X( i3 }- A+ y3 u- ]8 W: J
第n月之前出生的兔子 f(beforeN)
* Z+ P4 Z1 s9 {$ D& J
即 f(n) = f(newN) + f(beforeN)
' ~. z* r K0 S
! {4 r# R# U0 ?5 ^# q1 X5 z
= f(newN) + f(n-1)
, B4 \% P1 i/ |. R
) f# F9 v5 S$ }. l
9 H" m5 {; K5 ~' G/ ^; E
5 I, A0 H) a ~* @3 k
在第n+1个月里,第n个月新出生的兔子f(newN)还不能繁殖,数量不变;
7 M! D& ^3 B, T
0 e4 i* q, D. w+ A# k- P. Y
而第n个月之前出生的兔子f(beforeN),则可以成倍繁殖,数量X2
' M# u4 |- |7 J& }3 I( N1 L+ n
! f8 [" \" g9 J _% j
则 f(n+1) = f(newN) + 2(beforeN)X2
% X. b p3 x9 y1 [( Q
3 Q$ H( E8 {5 ^) {# A2 s8 i( F
化简得 f(n+1) = f(n) + f(n-1)
8 I2 p+ @/ u* R8 p$ ^% Y- \7 Z& o
% U' s {- S4 D+ h H& c# o7 E5 u8 F
即 f(n) = f(n-1) + f(n-2) (n=3,4,5,…)
( s# a: z/ X$ R) P: B* X$ a
" q: U7 k3 n9 U4 h8 u% I
+ l& r7 |6 |0 ^4 g
9 t9 l4 f `* l" ^' q/ ]3 G+ E; P
所以,每个月的兔子总对数可以归纳为一个分段函数:
8 U X, E2 {" v( g/ m) l
2 t4 _7 N" }# l: h
f(n) = 1 (n=1,2)
" j" ?8 O$ a% z0 r& |
) K H5 h1 x. S u
f(n) = f(n-1) + f(n-2) (n=3,4,5)
7 J2 M9 c. I% T# H4 d
* l6 b8 F0 W1 T7 b, M' n
接着编程为递归函数即可解决问题。
. [0 X7 U X3 u% I
E' K& N, g- K
! l0 J# G6 H# m- N. g$ v( m
3 z2 F9 T' E2 L7 a* O
. E( }5 J' u: ~) _8 B. s1 u8 S* U
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5