以下是引用gui_my在2012-2-12 17:46:00的发言:0 V! B3 e3 i: ]2 [& a4 h- F
水小子学弟、三叶草学妹智慧!言之有理,稍加变换,就可以计算每一年份的实际年龄。但其原理是什么呢?我想搞明白。大家再一起动动脑筋。 - f7 }- w* R+ e! E# G( A: k
俺试活试活。 . R( K: i* G1 n! k7 e1 Z& ], Z
设 x 为一个大于等于零整数。
9 b( E. j) }/ Q9 l
" t5 b. f/ p3 Y% P3 ?当 0<= x <=99 时, 2 k! K3 V5 U0 u. P; \% ]
通式可以表示为: x=10*a1+a0 --------(1) 7 @' b: E5 s3 v E4 G. H
其中: a0={0,1,2,...,9}, a1={0,1,2...,9}
4 |5 ^: ?5 _4 I: y # v: b, R; @; [5 W( i4 a/ {' [
当 0<= x <=999 时,
# r# u9 b; W+ s+ V0 I1 y. S0 m e通式可以表示为: x=100*a2+10*a1+a0 ---------(2) 2 ?* G' T7 s# j" k
其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9} ! w: l! E q- L0 d4 G5 r2 F
- ~3 C1 b7 i9 n当 0<= x <=9999 时,
+ t/ |6 X9 E: `) l6 y" v3 ]1 e% n8 y通式可以表示为: x=1000*a3+100*a2+10*a1+a0 ----------(3)
8 D% {8 @' d G* A7 r其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}, a3={0,1,2,...,9}
: Z( O" i, R/ B& A- k4 G! [- d 8 r- v9 ~. h! B( n- M* x2 J
当 。。。以此类推。 - q8 ^7 h+ d% {
" L( _+ `6 w- G+ U游戏的发明者应用了第二个表达性质,只是把10*a1+a0 变换成从当年计算的实际年龄,就如三叶草列出的关系式:
: I' k6 _. w$ J# y) w) R5 G 100*x+实际年龄 x={0,1,2...9} -----------(4) 4 y8 @1 V4 l S8 Y; @. W
6 Q! S b. x3 `4 P" ~* E$ B
(4)式说明,99以下的实际年龄选取不影响百位。所以上式构成的三位数的百位只和游戏中所要求选取的 x 取值有关。那些2,5,50,1762数字是弯弯绕,起迷惑作用。这些数字可以自选,甚至都可以弄成小数点儿,但最后一定要满足“100*x+实际年龄” 这个关系。比如,选x=4,再乘4,再加8,然后乘25,再加1810,再减去出生年,得出的三位数的第一位是4,后两位准是2010年当年的实际年龄。
- ~ s: ]5 q& M5 i M/ ?& M , p) w3 W' e6 E
想算100岁到999岁,该怎么办呢?。。。。呵呵,我就不多献丑了。
. Y, i2 r5 \; ^0 X % P5 ^# a/ d8 B) W
- X4 I$ D6 ?. [+ E- b; V[此贴子已经被作者于2012-2-13 5:09:15编辑过] |