以下是引用gui_my在2012-2-12 17:46:00的发言:( l: {3 g- w* R T: g
水小子学弟、三叶草学妹智慧!言之有理,稍加变换,就可以计算每一年份的实际年龄。但其原理是什么呢?我想搞明白。大家再一起动动脑筋。
# w# v+ o0 J ]# ^# o* J俺试活试活。 ' k" S/ C+ e+ B# M. Q7 `
设 x 为一个大于等于零整数。 ( P4 U+ t$ M. ^5 r
# P* q' }. G. R* o& ~5 s' P
当 0<= x <=99 时, 7 t5 z+ S& x/ z8 e
通式可以表示为: x=10*a1+a0 --------(1) " {& k3 C; I: t) a, {1 N- n# ^& v
其中: a0={0,1,2,...,9}, a1={0,1,2...,9} 0 H( q6 s5 A- a: R- ~. ~. \+ l* s
/ M+ I& P" ]' v# c, t
当 0<= x <=999 时, 4 n$ A+ ]( H+ n+ g8 g
通式可以表示为: x=100*a2+10*a1+a0 ---------(2)
- V4 T) n( @2 }2 M* x其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}
1 U) R: V6 C" D2 O 5 r( a6 p: C' `, Z7 o5 Y8 C+ u& x9 C
当 0<= x <=9999 时,
5 R" F% k$ v" B7 p$ g9 S7 x2 M通式可以表示为: x=1000*a3+100*a2+10*a1+a0 ----------(3)
# y& D. W; A7 B- o! A5 a其中: a0={0,1,2,...,9}, a1={0,1,2...,9}, a2={0,1,2,...,9}, a3={0,1,2,...,9}
; }; z4 ]* L) U* d, P5 N* C ! Q0 x }# I: P- o
当 。。。以此类推。 2 A& s5 O" V4 C, _- _9 |
@( A$ ]% O9 w& a; u8 s游戏的发明者应用了第二个表达性质,只是把10*a1+a0 变换成从当年计算的实际年龄,就如三叶草列出的关系式: 4 d5 g1 c/ c1 c, |3 B% S9 S
100*x+实际年龄 x={0,1,2...9} -----------(4)
2 l* x0 j/ p Y7 P5 }
4 X! x6 h# u# T" W(4)式说明,99以下的实际年龄选取不影响百位。所以上式构成的三位数的百位只和游戏中所要求选取的 x 取值有关。那些2,5,50,1762数字是弯弯绕,起迷惑作用。这些数字可以自选,甚至都可以弄成小数点儿,但最后一定要满足“100*x+实际年龄” 这个关系。比如,选x=4,再乘4,再加8,然后乘25,再加1810,再减去出生年,得出的三位数的第一位是4,后两位准是2010年当年的实际年龄。 5 N- B7 C- l0 r% K7 @
6 l$ ^* u, d, S) U0 [
想算100岁到999岁,该怎么办呢?。。。。呵呵,我就不多献丑了。 0 W& `" `% {- S" Y v
V0 A. ]0 F" H' E3 F
V4 Z& P# f5 F5 h7 u, X+ x/ b[此贴子已经被作者于2012-2-13 5:09:15编辑过] |