RosettaCodeData/Task/Arithmetic-geometric-mean/SQL/arithmetic-geometric-mean.sql

14 lines
263 B
SQL

with
rec (rn, a, g, diff) as (
select 1, 1, 1/sqrt(2), 1 - 1/sqrt(2)
from dual
union all
select rn + 1, (a + g)/2, sqrt(a * g), (a + g)/2 - sqrt(a * g)
from rec
where diff > 1e-38
)
select *
from rec
where diff <= 1e-38
;