Re: Problem in - Mailing list pgsql-sql

From Tom Lane
Subject Re: Problem in
Date
Msg-id 26108.1556211406@sss.pgh.pa.us
Whole thread Raw
In response to Problem in  (Max Lipsky <maxlipsky@gmail.com>)
Responses Re: Problem in  (Max Lipsky <maxlipsky@gmail.com>)
List pgsql-sql
Max Lipsky <maxlipsky@gmail.com> writes:
> SELECT acos(
>            cos(radians(48.9193))
>            * cos(radians(48.9193))
>            * cos(radians(2.5431) - radians(2.5431))
>            + sin(radians(48.9193))
>              * sin(radians(48.9193))
>        ) as result;

> This returned [22003] ERROR: input is out of range

Not too surprising, because (at least on my machine)

regression=# select cos(radians(48.9193))
regression-#            * cos(radians(48.9193)) +  sin(radians(48.9193))
regression-#              * sin(radians(48.9193));
      ?column?      
--------------------
 1.0000000000000002
(1 row)

Problems of this sort are inevitable when working with finite-precision
math.

https://en.wikipedia.org/wiki/Round-off_error

            regards, tom lane



pgsql-sql by date:

Previous
From: Max Lipsky
Date:
Subject: Problem in
Next
From: Max Lipsky
Date:
Subject: Re: Problem in