I'm not sure where you got the formula from but it is very wrong
Consider ((e*b)/(c*d*f))
All variables are integers so arithmetic is integer based and they have the following characteristics
Initial
Variable Value Increment
b 1 2
c 4 3
d 5 3
e 1 1
f 3 0
Then for these values
c > b is always true
d > e is always true
Therefore (e*b) < (c*d*f) is always true* and since integer division is in operation ((e*b)/(c*d*f)) is always 0.
* Actually this isn't quite true because towards the end of the iteration (c*d*f) actually wraps (gets bigger than an integer can hold) and on my machine this results in a negative number but the absolute value of this number is always bigger than (e*b) but that is a fluke.
Since ((e*b)/(c*d*f)) is always 0 your calculation becaomes
-
x=3;
-
a=1.0;
-
-
for (i=1; i<=9999; i=i+1)
-
{
-
a=a*x;
-
x=x+5;
-
}
-
x increments by 5 every time it is getting larger all the time a is getting exponentially larger all the time. It calculates
3 * 8 * 13 * 18 * ... * 49983 * 49988 * 49993 * 49998
This is neither PI nor does it fit into a float.
In fact a takes the value 1.#INF on the 130th iteration of the loop, on the 129th iteration it had the value 7.01924e306, at this point x had a value of 648.