how to calculate alternating summation for pi

How do I write code to estimate pi up to 1 million terms (n=1million) of: pi = 4(1/1 - 1/3 + 1/5 - 1/7 +...etc)

Answers (2)

Use MATLAB vectors:
N = 1E+6; % Number Of Terms
N = 2*fix(N/2); % Assure Even Number Of Terms
sgn = -(-1).^[1:N]; % Sign Vector
denom = 1:2:2*N; % Denominator Vector
pie = 4*sum(1./(denom.*sgn)) % Desired Result
error = pi - pie % Difference Between Our Calculation And MATLAB ‘pi’
pie =
3.14159165358978
error =
1.00000001213019e-06

2 Comments

for the 'sgn' and 'denom' steps, how could you make those into vector equations—i.e 'v =' ?
I’m not certain what you mean by ‘vector equations—i.e 'v =' ’ A more detailed description or explanation would be helpful.
They are already ‘vector equations’ as I interpret it. I combined them in the ‘pie’ assignment. You can break them out as a single vector and then calculate ‘pie’ as:
v = denom.*sgn;
pie = 4*sum(1./v)
While I’m thinking about it, remember to celebrate International Pi Day (to three significant digits) on March 14 (3 14 2017).

Sign in to comment.

Products

Tags

Asked:

on 31 Jan 2017

Commented:

on 31 Jan 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!