I was wondering how to replace common trigonometric values
in an expression
. To put this into more context, I am making a calculator that needs to be able to evaluate user inputs such as "sin(Math.PI)
", or "sin(6 * math.PI/2)
". The problem is that floating point values
aren't accurate and when I input sin(Math.PI)
, the calculator ends up with:
1.2245457991473532E-16
But I want it to return 0. I know I could try replacing in the expression all sin(Math.PI)
and other common expressions with 0, 1, etc., except I have to check all multiples of Math.PI/2
. Can any of you give me some guidance on how to return the user the proper values?