Re: BUG #3289: SIN(PI()) expected to return 0, but returns garbage

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: BUG #3289: SIN(PI()) expected to return 0, but returns garbage
Дата
Msg-id 464C308A.7010103@enterprisedb.com
обсуждение исходный текст
Ответ на BUG #3289: SIN(PI()) expected to return 0, but returns garbage  ("Daniel Kastenholz" <mail@danielkastenholz.de>)
Список pgsql-bugs
Daniel Kastenholz wrote:
> Type in SELECT SIN(PI())
>
> Expected output:
> 0
>
> Actual output:
> * Windows, using 8.2.4:
>   garbage (-2.2......)
>
> * Linux, using 8.1:
>   garbage (1.22.......)
>
> --
>
> Comments:
> SIN(3.1414) and SIN(3.1417) come close to 0 and work on both platforms.
> SIN(3.1415) and SIN(3.1416) produce the same garbage output as using PI() on
> both platforms.

You don't get 0 because the value of pi is just an approximation, and
most likely the output of sin is not exact either. What you get is
pretty darn close to 0, however. Apparently you didn't read the output
carefully: it's in scientific notation. I'm getting

  1.22460635382238e-16

on my laptop, which means 1.22460635382238 * 10^(-16).

--
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com

В списке pgsql-bugs по дате отправления:

Предыдущее
От: "Daniel Kastenholz"
Дата:
Сообщение: BUG #3289: SIN(PI()) expected to return 0, but returns garbage
Следующее
От: Max Khon
Дата:
Сообщение: ON DELETE CASCADE with multiple paths