I'm programming an application for calculate some geometrical transformations, and while I was testing the program, I founded something strange: I launched a test in two different machines, Z400 workstation with an Intel® Xeon® Processor W3550 and Z800 workstation with an Intel® Xeon® Processor X5560, and I got different results for one operation:
double x = 24.169408798217777 * sin(0.59420877837561048) / sin(0.97658754841928608)
With the Z400 I got x=16.330508228047432
While the Z800 throws this value x=16.330508228047435
The value differs on the last digit, and I make lot of calculations with that value, so it results inconvenient.
I tried using sinl
in order to get more precission, but I got the same value all the times for each workstation. What's wrong with it? How I can fix it?