Why is this expression not evaluating properly?
<p>I'm trying to evaluate the following expression in C++. I'm using Visual Studio (current release) if that makes any difference.</p>

<pre><code>#define _USE_MATH_DEFINES
#include &lt;math.h&gt;
#include &lt;iostream&gt;

std::cout &lt;&lt; (1.686 * 1000 / (4 / 3) / M_PI / (pow(0.015, 3)) / 3340);
</code></pre>

<p>Now when I execute the program the output is:</p>

<p><strong>47608.8</strong></p>

<p>Whereas if I use WolframAlpha the expression is evaluated to:
<a href="https://i.stack.imgur.com/CcL3b.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/CcL3b.png" alt="Wolfram&#39;s result"></a></p>

<p>I've also tried breaking down each portion of the expression to check if things like the "pow()" function is working correctly or if M_PI is accurate but everything seems to be consistent up until I evaluate everything at once.</p>

<p><strong><em>Am I missing something, why am I getting an incorrect answer?</em></strong></p>

<p>I've been looking at this code for quite a while now and I can't seem to figure out what's going on. I'm thinking it might be some sort of precision error?</p>