Summation with looping

2 次查看(过去 30 天)
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.

采纳的回答

Paulo Silva
Paulo Silva 2011-12-5
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 个评论
Daniel
Daniel 2011-12-6
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
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?

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2011-12-6
I think the problem is in your filename:
"imageanalystbs.m"
That sounds like a horrible name to me.
ImageAnalyst
  2 个评论
Daniel
Daniel 2011-12-6
Sorry, I don't see a problem?
Salah Saad
Salah Saad 2015-5-5
编辑:Salah Saad 2015-5-5
he's being sarcastic...ish, it still is a weird filename

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by