Arithmetic-geometric mean: Difference between revisions
Content added Content deleted
(→{{header|Perl 6}}: simplify) |
(Added EchoLisp) |
||
Line 470: | Line 470: | ||
<pre>0.8472130847939790866</pre> |
<pre>0.8472130847939790866</pre> |
||
All the digits shown are exact. |
All the digits shown are exact. |
||
=={{header|EchoLisp}}== |
|||
We use the '''(~= a b)''' operator which tests for |a - b| < ε = (math-precision). |
|||
<lang scheme> |
|||
(lib 'math) |
|||
(define (agm a g) |
|||
(if (~= a g) a |
|||
(agm (// (+ a g ) 2) (sqrt (* a g))))) |
|||
(math-precision) |
|||
→ 0.000001 ;; default |
|||
(agm 1 (/ 1 (sqrt 2))) |
|||
→ 0.8472130848351929 |
|||
(math-precision 1.e-15) |
|||
→ 1e-15 |
|||
(agm 1 (/ 1 (sqrt 2))) |
|||
→ 0.8472130847939792 |
|||
</lang> |
|||
=={{header|Elixir}}== |
=={{header|Elixir}}== |