正弦、余弦和正切

基本类型 / 数字 / 数学运算

-- Angles are in radians
local sin90 = math.sin(math.pi / 2)
-- sin90 = 1.0

local cos180 = math.cos(math.pi)
-- cos180 = -1.0

-- Degrees to radians
local sin30 = math.sin(math.rad(30))
-- sin30 = 0.5

-- The result is not exact
local tan45 = math.tan(math.pi / 4)
-- tan45 = 1.0
local exact = tan45 == 1
-- exact = false
-- print rounds to 14 digits, %.17g does not
local tan45_digits = string.format("%.17g", tan45)
-- tan45_digits = 0.99999999999999989

print("sin90 = " .. sin90)
print("cos180 = " .. cos180)
print("sin30 = " .. sin30)
print("tan45 = " .. tan45)
print("exact = " .. tostring(exact))
print("tan45_digits = " .. tan45_digits)