Circles of given radius through two points: Difference between revisions

m
→‎{{header|REXX}}: changed extra digits and optimized the sqrt function, added a comment.
m (→‎{{header|REXX}}: added/changed whitespace and comments, simplified a function.)
m (→‎{{header|REXX}}: changed extra digits and optimized the sqrt function, added a comment.)
Line 1,575:
/*────────────────────────────────────────────────────────────────────────────*/
sqrt: procedure; parse arg x; if x=0 then return 0; d=digits(); i=; m.=9
numeric digits 9; numeric form; h=d+6; if x<0 then do; x=-x; i='i'; end; numeric form; h=d+2
parse value format(x,2,1,,0) 'E0' with g 'E' _ .; g=g*.5'Ee'_%2
do j=0 while h>9; m.j=h; h=h%2+1; end /*j*/
do k=j+5 to 0 by -1; numeric digits m.k; g=.5*(g+x/g)*.5; end /*k*/
numeric digits d; return (g/1)i /*make complex if X < 0.*/</lang>
'''output'''
<pre>