Draw a sphere: Difference between revisions
Content added Content deleted
m (→{{header|REXX}}: removed superflous blanks. -- ~~~~) |
m (→{{header|REXX}}: change internal subroutine name. -- ~~~~) |
||
Line 1,528: | Line 1,528: | ||
/*─────────────────────────────────────"1─liner" subroutines────────────*/ |
/*─────────────────────────────────────"1─liner" subroutines────────────*/ |
||
sqrt: procedure expose $.; parse arg x; if x=0 then return 0; d=digits() |
sqrt: procedure expose $.; parse arg x; if x=0 then return 0; d=digits() |
||
numeric digits 11; g= |
numeric digits 11; g=.sqrtGuess(); do j=0 while p>9; m.j=p;p=p%2+1;end |
||
do k=j+5 to 0 by -1; if m.k>11 then numeric digits m.k |
do k=j+5 to 0 by -1; if m.k>11 then numeric digits m.k |
||
g=.5*(g+x/g); end; numeric digits d; return g/1 |
g=.5*(g+x/g); end; numeric digits d; return g/1 |
||
.sqrtGuess: numeric form; m.=11; p=d+d%4+2 |
|||
parse value format(x,2,1,,0) 'E0' with g 'E' _ .; return g*.5'E'_%2 |
|||
ceil: procedure; parse arg x; _=trunc(x); return _+(x>0)*(x\=_) |
ceil: procedure; parse arg x; _=trunc(x); return _+(x>0)*(x\=_) |
||
floor: procedure; parse arg x; _=trunc(x); return _-(x<0)*(x\=_)</lang> |
floor: procedure; parse arg x; _=trunc(x); return _-(x<0)*(x\=_)</lang> |
||
'''output''' |
|||
Output: |
|||
<pre style="height:105ex;overflow:scroll"> |
<pre style="height:105ex;overflow:scroll"> |
||
eeeeeeeeee@@@@@@@ |
eeeeeeeeee@@@@@@@ |