I have the following polynomial
F(x) = 1^5 + (1^5 + 2^5)+ (1^5 + 2^5 + 3^5) + ... + (1^5 + 2^5 + 3^5 + 4^5 + ... + x^5)
How can I write a loop iteration for this polynomials?

1 个评论

Why do you need a loop?
1^5 + (1^5 + 2^5) + (1^5 + 2^5 + 3^5) + (1^5 + 2^5 + 3^5 + 4^5)
ans = 1610
sum(cumsum((1:4).^5))
ans = 1610

请先登录,再进行评论。

 采纳的回答

KSSV
KSSV 2020-11-20
编辑:KSSV 2020-11-20
x = 10 ;
thesum = 0 ;
for i = 1:x
thesum = thesum+sum((1:i).^5) ;
end

5 个评论

thanks a lot. Well, can we also do this without loop iteration, that's, vectorization?
Yes very much it can be done: See Rik answer.
btw, your code gives wrong result:(
Hey..yes there is a typo error in the code. I have edited it now.

请先登录,再进行评论。

更多回答(1 个)

I would suggest not using a loop:
F=@(x) sum( ( (1:x).^5 ).*(x:-1:1) );

2 个评论

this is with vectorization method?
Yes, and the code posted by Stephen in a comment is also vectorized.
There are probably some exceptions I'm not thinking of, but if you don't see a loop (or cellfun/arrayfun) the code is vectorized.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by