数学建模社区-数学中国

标题: 经典兔子繁殖问题的简单数学建模过程 [打印本页]

作者: 佛自业障    时间: 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$ }. l9 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) l2 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