extern double POWR(); double TIMESTE(pow, a) double a; int pow; { int p ; register double n, t, r, s; p = pow < 0 ? -pow : pow; n = 5.0; t = 2.0; if ( (p & 1) == 0 ) {r = 1.0; s = 1.0; } else {r = 5.0; s = 2.0; } p >>= 1; while ( p != 0 ) { n *= n; t *= t; if ( (p & 1) != 0 ) {r *= n; s *= t; } p >>= 1; } if (pow<0) { return((a/r)/s); } else { return((a*r)*s); } }