# For loop not calculating properly

4 views (last 30 days)
Kyle Donk on 14 Jan 2020
Commented: Image Analyst on 18 Jan 2020
My instructions are to calculate the result and absolute error for each partial sum: N = 10, 160, and 640. I am supposed to be getting the sum and error value for each N, but I am only getting the sum and error values for 640 only. I do not know why this is the case, as N equals 10, 160 and 640.
PLEASE DO NOT GIVE ME A COMPLETE ANSWER. I WOULD JUST LIKE TO KNOW WHAT I AM DOING WRONG. THANK U.
This is what I have so far:
for N=[10 160 640]
sum=0;
for n=1:N
y=1/n^2
sum=sum+y;
end
sum
error=((pi^2)/6)-sum
end
##### 3 CommentsShowHide 2 older comments
Image Analyst on 14 Jan 2020
Kyle, did you see my Answer (below)??? I already gave you hints for solving it using your current for loop.

Sign in to comment.

### Accepted Answer

Image Analyst on 14 Jan 2020
Don't use sum as the name of your variable since that's already the name of a built-in function.
You need to assign N outside the loop and then get it inside the loop (method 1), OR use a counter to get the iteration number (method 2).
N=[10 160 640] % Method 1
for k = 1 : length(N)
thisN = N(k)
% more code to compute this sum.
end
Then you need to compute thisSum(k) and also index the error with the iteration loop counter:
thisError(k) = ((pi^2)/6) - thisSum(k);
so that you will have an error value for every iteration.
##### 1 CommentShowHide None
Image Analyst on 18 Jan 2020
Kyle, did this solve it? If so, please accept this answer, and any other answers for your other questions/threads. Thanks in advance.

Sign in to comment.

### Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!