# Calculating Pi using simple JavaScript

One day I was bored and wanted to calculate Pi for myself. After finding out the Leibniz formula for Pi. When it is solved for Pi one gets:

Pi=4/1-4/3+4/5-4/7...

And so on since it's an infinite series. Since one can see a pattern that can easily be defined I concluded that a simple program using a loop could be made. I decided on using JavaScript for its ease of use and use a for loop. The program I made at first was mainly:

var Pi=0;

var n=1;

for (i=0;i<=1000;i++)

{

Pi=Pi+(4/n)

n=n+2

Pi=Pi-(4/n)

n=n+2

}

Where the variable "Pi" is the value of Pi, "i" is the number of times the loop is repeated, and "n" is just a variable to help in the formula. This I however found could further simplified to:

var Pi=0;

var n=1;

for (i=0;i<=1000;i++)

{

Pi=Pi+(4/n)-(4/(n+2))

n=n+4

}

Of course the more times the loop is repeated, the more accurate your value of Pi gets, and while 1000 may seem like a large number, the value of Pi which it calculated is wrong after the 3rd decimal point. I've had it repeat over 100,000 times and it gets more accurate, however, remember that making the number of repeats can slow down and even crash your browser (I speak from experience). If you want some ready made scripting, then here's some scripting I've made which lets you easily control the amount of loop repeats. It is based as an HTML document:

<html>

<body>

<input type="button" onclick="Calculate()" value="Calculate Pi" />

<script type="text/javascript">

//Made by Masterdude

var c=0;

function Calculate()

{

var c=prompt("Enter number of cycles:","0");

if (c>0)

{

var Pi=0;

var n=1;

for (i=0;i<=c;i++)

{

Pi=Pi+(4/n)-(4/(n+2))

n=n+4

}

alert(Pi);

}

else

{

alert("Canceled or Error in input: Input must be positive.");

}

}

</script>

</body>

</html>

Further simplified to:

(function(Pi,n){

Pi+=(4/n)-(4/(n+2));

n+=4;

arguments.callee(Pi,n)

})(0,1)

httptomas@gmail.com

Select as Best AnswerUndo Best Answer

Interesting... I'll have to try this sometime.

Select as Best AnswerUndo Best Answer

I have made another post on calculating pi faster. Please view it. Click this link.

Select as Best AnswerUndo Best Answer

. Neat "trick". There's an extra set of braces in the code (after var c=prompt...), but that won't hurt anything.

Select as Best AnswerUndo Best Answer

Ha, I just read this comment and the one below and...combed the code for the extra braces. xD

Select as Best AnswerUndo Best Answer

Thanks and I changed it.

Select as Best AnswerUndo Best Answer

You are aware that the Leibniz formula for Pi converges rather slowly aren't you?

http://en.wikipedia.org/wiki/Leibniz_formula_for_pi

L

Select as Best AnswerUndo Best Answer

I know. I didn't make it to make it for serious calculation of Pi but just as a simple project so it doesn't make much of a difference.

Select as Best AnswerUndo Best Answer

I didn't know whether you were aware of the things that people have done to address accuracy with fewer terms - I found it interesting myself.

L

Select as Best AnswerUndo Best Answer