Mit Spass am Knobeln läßt sich auch eine Formel finden die den lookup durch direkte Berechnung ersetzt. Z.B.:Zugegeben, etwas häßlich und voluminös geraten. Vielleicht geht's ja eleganter?Code:int lookup(int x) { int tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7; tmp2=x+1; tmp1= x==2?-1:(x-1)/( x-2); tmp5=tmp1; tmp1-=tmp2; tmp4=(tmp1+tmp5+1)%tmp1+2; tmp1=70^tmp2; tmp3=tmp1-2; tmp1++; tmp7=tmp1; tmp6=2*(tmp1%tmp2) &tmp3; tmp3-=3; tmp1&=tmp3; tmp2=(((tmp1+tmp3|tmp7)^tmp5 |tmp2)+4)|tmp7; tmp1=(4|tmp7|tmp4)+tmp3; tmp1^=2; tmp1|=tmp7+1; tmp1^=tmp5; tmp1=tmp1/2+6; tmp1|=tmp7+1; return (tmp1^tmp2)+tmp7-((sign(tmp6)*tmp4+1)^1)-tmp6; }![]()
Lesezeichen