Jump to content

Integer roots: Difference between revisions

Line 25:
Uses GNU GMP library
<lang zkl>var [const] BN=Import("zklBigNum");
fcn root(n,r){ rm1:=r-1;
f:='wrap(z){ (n/z.pow(r-1) + z*(r-1))/r or 1 }; //--> v or 1
c:=1;
(c,d,e:=1,f(n/c.pow(rm1) + c*rm1)/r) : if,f(_==0d) d=1;;
while(e:c!=(n/d.pow(rm1) +and d*rm1)/rc!=e){ : ifc,d,e=d,e,f(_==0e) e=1;;}
if(d<e) d else e
while(c!=d and c!=e){ c,d,e=d,e,(n/e.pow(rm1) + e*rm1)/r }
if(d<e) d else e
}</lang>
<lang zkl>a:=BN(100).pow(2000)*2;
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.