以下是引用gui_my在2012-2-12 17:46:00的发言:
2 m1 G8 Y6 f" \" g水小子学弟、三叶草学妹智慧!言之有理,稍加变换,就可以计算每一年份的实际年龄。但其原理是什么呢?我想搞明白。大家再一起动动脑筋。 8 s* M) R3 Z, S( e# K' G
俺试活试活。 4 M8 Y1 S# v) {+ `- N$ d; `* Q% M7 j
设 x 为一个大于等于零整数。
3 i J. D) y. S& Z 3 h) g; d5 N8 i% ?9 K5 v+ p7 L
当 0<= x <=99 时,
6 \/ ?; P, m( ^6 K$ [通式可以表示为: x=10*a1+a0 --------(1)
6 D4 N. V& v. X" n其中: a0={0,1,2,...,9}, a1={0,1,2...,9} & E( [- r5 n8 l
" U2 N" ^" f; a+ h3 H: }
当 0<= x <=999 时,
! |7 Q5 D2 {) c8 o$ q通式可以表示为: x=100*a2+10*a1+a0 ---------(2)
2 d) e2 J, E4 i+ i' X3 W7 ?0 Q* j其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}
! f! [, T m; p7 M; ~" y
9 ]5 U4 o- o+ t6 c当 0<= x <=9999 时,
1 `, i# _+ J$ l" Q6 z: H4 }9 b通式可以表示为: x=1000*a3+100*a2+10*a1+a0 ----------(3)
, x% @9 ?0 W& ]其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}, a3={0,1,2,...,9} 8 Z6 U2 G( w0 b; U @+ q# p
$ s5 o* ?. Y ?" e9 i; Q) y5 a0 q当 。。。以此类推。 7 d x: r, Q& ] w4 W
- y& K8 y+ ]2 @游戏的发明者应用了第二个表达性质,只是把10*a1+a0 变换成从当年计算的实际年龄,就如三叶草列出的关系式:
. [. [9 A$ ^0 l* r 100*x+实际年龄 x={0,1,2...9} -----------(4)
/ x/ `% o) k9 g6 F0 J: }, d2 F
9 ]- A1 Z+ y% i/ R5 K/ @, Z& F/ n(4)式说明,99以下的实际年龄选取不影响百位。所以上式构成的三位数的百位只和游戏中所要求选取的 x 取值有关。那些2,5,50,1762数字是弯弯绕,起迷惑作用。这些数字可以自选,甚至都可以弄成小数点儿,但最后一定要满足“100*x+实际年龄” 这个关系。比如,选x=4,再乘4,再加8,然后乘25,再加1810,再减去出生年,得出的三位数的第一位是4,后两位准是2010年当年的实际年龄。 " ]" W( R t1 G- t, W
0 E; B' W/ ?* q! S2 F ^ T
想算100岁到999岁,该怎么办呢?。。。。呵呵,我就不多献丑了。 * w) E" \; Q6 r. @2 M% x* w
; b f9 n( K1 A. H
$ \. S$ J3 U5 Z1 k6 Z
[此贴子已经被作者于2012-2-13 5:09:15编辑过] |