LUA Тригонометрические функции, возвращающие неожиданные значения

Недавно я немного повеселился со встроенной в математическую библиотеку Lua (версия 5.3.4), но обнаружил некоторые странные аномалии с функциями триггера (sin, cos, tan и т. Д.).

Более конкретно, ожидаемые результаты функций не совпадают с тем, что выдает интерпретатор Lua.

Например, синус пи радиан должен быть нулевым.

Но вместо этого переводчик дает мне следующее:

math.sin(math.pi) --outputs 1.2246467991474e-16

Теперь я знаю, что обозначение означает, что число равно 0,000000000000000012... которое невероятно близко к нулю (и может быть округлено с помощью math.floor), но почему Lua выводит приближения, а не истинное или принятое значение?

Является ли синус пи радиан на самом деле не нулем, а числом, действительно близким к нулю? Или это результат чего-то закулисного? Или я просто испортил синтаксис здесь?

0 ответов

Другие вопросы по тегам