以下是引用gui_my在2012-2-12 17:46:00的发言:
! g b' R0 C4 f, A7 H* J( P5 l水小子学弟、三叶草学妹智慧!言之有理,稍加变换,就可以计算每一年份的实际年龄。但其原理是什么呢?我想搞明白。大家再一起动动脑筋。
; ?. v% ~6 A7 |9 W: @- t# X" t俺试活试活。
2 ?3 E0 ^5 D! g* b设 x 为一个大于等于零整数。
* M# p7 _0 h# M" M) V ; v6 ]# s( p# y1 w
当 0<= x <=99 时,
2 H! A: I% w }8 i# z6 E通式可以表示为: x=10*a1+a0 --------(1) * D9 K: N. q/ h0 s1 N; v5 J
其中: a0={0,1,2,...,9}, a1={0,1,2...,9} % r+ t$ Z7 _. Z" F9 h. ?
7 t, P, s7 \) k" W$ l; Y
当 0<= x <=999 时,
; M9 n: M u; l- T! V9 e通式可以表示为: x=100*a2+10*a1+a0 ---------(2)
( h# e) Q5 P+ E, t8 m# w+ T4 ]其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9} $ M6 V) z1 x3 J0 ^( G
0 K" Z' Y# h s当 0<= x <=9999 时, 6 D& T; ~8 o' F6 |0 B, G
通式可以表示为: x=1000*a3+100*a2+10*a1+a0 ----------(3) 0 o+ d& U1 c7 V: u9 k( ~& R, E+ l* g
其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}, a3={0,1,2,...,9}
I; p4 S8 Y3 D' ^: O
$ H/ G2 s( v; w! t. O3 S) A当 。。。以此类推。 $ a$ E3 q; i/ d
+ @; I3 u: `7 w+ k2 o0 `游戏的发明者应用了第二个表达性质,只是把10*a1+a0 变换成从当年计算的实际年龄,就如三叶草列出的关系式: 9 W3 V- J8 `/ y+ |. G
100*x+实际年龄 x={0,1,2...9} -----------(4) # F' u$ p- Y) ^' U3 J
8 d3 J; z4 Z$ |' [- V(4)式说明,99以下的实际年龄选取不影响百位。所以上式构成的三位数的百位只和游戏中所要求选取的 x 取值有关。那些2,5,50,1762数字是弯弯绕,起迷惑作用。这些数字可以自选,甚至都可以弄成小数点儿,但最后一定要满足“100*x+实际年龄” 这个关系。比如,选x=4,再乘4,再加8,然后乘25,再加1810,再减去出生年,得出的三位数的第一位是4,后两位准是2010年当年的实际年龄。
6 j2 @! W9 O" y3 | . B! A q* ?7 @1 v9 J% F% m* a
想算100岁到999岁,该怎么办呢?。。。。呵呵,我就不多献丑了。 3 @; V9 K1 V8 b3 x& i/ B& l
7 _7 n) W/ }' R
E+ q7 ~5 \ I# V* [
[此贴子已经被作者于2012-2-13 5:09:15编辑过] |