The correct answer (out of the ones listed with the question) is actually pretty slow compared to other methods. Also, the correct answer takes inputs as FLOAT. That usually doesn't mean much but if you have more than 15 significant digits, you'll see truncation.
--Jeff Moden
Change is inevitable... Change for the better is not.