1 //-----------------------------------------------------------------------------
5 // Returns null pointer if not perfect root.
7 // The sign of the radicand is ignored.
9 //-----------------------------------------------------------------------------
15 mroot(unsigned int *n
, unsigned int index
)
18 unsigned int m
, *x
, *y
;
21 stop("root index is zero");
23 // count number of bits
25 k
= 32 * (MLENGTH(n
) - 1);
27 m
= n
[MLENGTH(n
) - 1];
45 for (i
= 0; i
< j
; i
++)