以下是引用gui_my在2012-2-12 17:46:00的发言:, x* A5 y/ p4 W+ ^ j: q8 y* D
水小子学弟、三叶草学妹智慧!言之有理,稍加变换,就可以计算每一年份的实际年龄。但其原理是什么呢?我想搞明白。大家再一起动动脑筋。 , J4 a4 |9 ?8 S' u f
俺试活试活。 # X6 ^6 _1 Q) G* ?) I5 @
设 x 为一个大于等于零整数。
8 m1 j2 x6 H/ G8 T6 `* N8 B/ y . M5 G4 X& O5 k
当 0<= x <=99 时,
' b# L4 t; B7 D, j! @. z; h |通式可以表示为: x=10*a1+a0 --------(1)
% g: M& }" R7 q; p# r* J& u7 s0 N; c9 n其中: a0={0,1,2,...,9}, a1={0,1,2...,9} % r/ k# o2 O& i
$ ? o- m0 J- l( M当 0<= x <=999 时, , s! E$ P3 X! c# k0 e6 N
通式可以表示为: x=100*a2+10*a1+a0 ---------(2) 8 V7 D, Y4 J d4 R' _) ?% ~# q$ ?
其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9} # v& F6 v6 _2 d/ N4 X- x
, n# U' ^) F/ r* j) B当 0<= x <=9999 时, . d. M- t% _ c( V M* f
通式可以表示为: x=1000*a3+100*a2+10*a1+a0 ----------(3) ( f4 \+ m( s) Q- w& e* M' T4 o2 w
其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}, a3={0,1,2,...,9}
- @1 C: O5 }, Z0 I. S2 B
5 y+ [ _4 U, D y& \2 S当 。。。以此类推。 ( x y! r7 y9 j Y8 e# n, i
" s/ U, m7 m- y* n0 ?* L4 h5 r3 a游戏的发明者应用了第二个表达性质,只是把10*a1+a0 变换成从当年计算的实际年龄,就如三叶草列出的关系式:
# n+ w0 G- d B 100*x+实际年龄 x={0,1,2...9} -----------(4) . F, }6 g3 U2 _- t" B# w# a. S
2 d# g6 d+ k7 M% I' t: O: T(4)式说明,99以下的实际年龄选取不影响百位。所以上式构成的三位数的百位只和游戏中所要求选取的 x 取值有关。那些2,5,50,1762数字是弯弯绕,起迷惑作用。这些数字可以自选,甚至都可以弄成小数点儿,但最后一定要满足“100*x+实际年龄” 这个关系。比如,选x=4,再乘4,再加8,然后乘25,再加1810,再减去出生年,得出的三位数的第一位是4,后两位准是2010年当年的实际年龄。
/ I6 ]1 j) v# [6 R: _5 S' T 7 _1 A& W. T3 S% e5 ^; _' B) R
想算100岁到999岁,该怎么办呢?。。。。呵呵,我就不多献丑了。 8 m) F( c7 p/ ^+ _, Z) s( P
! q! u" F+ }( i& E9 j : C3 p% d7 R6 ]+ r5 j: n/ P
[此贴子已经被作者于2012-2-13 5:09:15编辑过] |