以下是引用gui_my在2012-2-12 17:46:00的发言:1 P9 q9 ~2 \1 k( t+ A
水小子学弟、三叶草学妹智慧!言之有理,稍加变换,就可以计算每一年份的实际年龄。但其原理是什么呢?我想搞明白。大家再一起动动脑筋。
7 C2 |3 v! I4 @( f俺试活试活。 $ X, I/ z/ B2 [
设 x 为一个大于等于零整数。
# |1 u, G% y" B7 f 6 {0 l# E. U, U: p" u3 \+ q r
当 0<= x <=99 时, ! \1 w/ A* @& K1 [
通式可以表示为: x=10*a1+a0 --------(1)
0 A- a6 R& M) M1 R其中: a0={0,1,2,...,9}, a1={0,1,2...,9} r3 D2 O; v' b1 t8 P
" F% q) d. ]3 V5 M) P2 {# v当 0<= x <=999 时, 0 m' g* K! w( `) Z j+ o
通式可以表示为: x=100*a2+10*a1+a0 ---------(2)
0 _8 a# F5 q! _: P1 j8 F其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}
4 J' w) M! Y, s& A' g! E . O: G) C; Z: l0 @0 T
当 0<= x <=9999 时, + z/ Q+ |% ?1 d3 |1 K
通式可以表示为: x=1000*a3+100*a2+10*a1+a0 ----------(3) + o0 H% j9 N/ `$ p
其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}, a3={0,1,2,...,9} 5 l4 A+ ]4 K$ _: E! x( |
% I6 z9 R1 u+ ~0 T. v( @
当 。。。以此类推。 ' j: Z0 |. p; C8 U9 p" Y" n" h
, `2 ?% z+ E6 d; \! W. {* t- y游戏的发明者应用了第二个表达性质,只是把10*a1+a0 变换成从当年计算的实际年龄,就如三叶草列出的关系式:
) G/ d& _& [; A& k 100*x+实际年龄 x={0,1,2...9} -----------(4)
) H) @9 ^* @' h+ w! _! f ' S, q; I' A [7 T- E
(4)式说明,99以下的实际年龄选取不影响百位。所以上式构成的三位数的百位只和游戏中所要求选取的 x 取值有关。那些2,5,50,1762数字是弯弯绕,起迷惑作用。这些数字可以自选,甚至都可以弄成小数点儿,但最后一定要满足“100*x+实际年龄” 这个关系。比如,选x=4,再乘4,再加8,然后乘25,再加1810,再减去出生年,得出的三位数的第一位是4,后两位准是2010年当年的实际年龄。
\) K" H, y3 I- O5 z! n - u+ S* C) D+ i9 {
想算100岁到999岁,该怎么办呢?。。。。呵呵,我就不多献丑了。 4 ] M5 T8 z. G0 D+ ?
, j+ |& _! N5 `- E Z- d' g. N; n! D8 N6 r
[此贴子已经被作者于2012-2-13 5:09:15编辑过] |