Summation with looping

5 views (last 30 days)
Daniel
Daniel on 5 Dec 2011
Find ∑((x^)n/n!) for x=1.8 and n=0 to 16.
Okay, my first attempt to do this looked like:
x = 1.8 For(0:16) xs = sum((x^n)/factorial(n)) end
xs
But I received the error: ??? Error: File: imageanalystbs.m Line: 11 Column: 6 Unexpected MATLAB expression.
My line 11 is the one with "For (0:16)"
What am I doing wrong here? Any help is appreciated.

Accepted Answer

Paulo Silva
Paulo Silva on 5 Dec 2011
for n=0:16 is the correct syntax, you are also making another error by doing the summation in every iteration, you should instead find all values and do the summation after the loop ends
x = 1.8
xl=zeros(17,1); %preallocation of the storage
for n=0:16
xl(n+1) = ((x^n)/factorial(n)); %save every iteration result
end
xs=sum(xl) %calculate the sum of the iteration results
it can also be done without loops
n=0:16;
xs = sum(((x.^n)./factorial(n))); %notice the dots
  6 Comments
Daniel
Daniel on 6 Dec 2011
Thank you Paulo! I will give it a try and see what happens. No worries Sean, you were a great help on the last question. :)
OLUBUKOLA ogunsola
OLUBUKOLA ogunsola on 5 Jun 2016
i hope someone will still answer this after a long time. how can i achieve this without the built in function factorial, also ill like x to vary from say , 1 to 1000?

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 6 Dec 2011
I think the problem is in your filename:
"imageanalystbs.m"
That sounds like a horrible name to me.
ImageAnalyst
  2 Comments
Daniel
Daniel on 6 Dec 2011
Sorry, I don't see a problem?
Salah Saad
Salah Saad on 5 May 2015
Edited: Salah Saad on 5 May 2015
he's being sarcastic...ish, it still is a weird filename

Sign in to comment.

Categories

Find more on Programming in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!