Summation with FOR Loop

28 次查看(过去 30 天)
Me29
Me29 2017-4-17
Hello, Super noob question, but how do I do the attached picture in MatLab using a FOR loop. I just need to know how to set up the loop, not the actual values. Thanks for any help!

采纳的回答

Torsten
Torsten 2017-4-18
omega=...;
t=...;
N=...;
summe = 0.0;
for k=1:N
summe = summe + sin(omega*t*(2*k-1))/(2*k-1);
end
Best wishes
Torsten.
  2 个评论
Me29
Me29 2017-4-18
I don't think that is correct.. Given t=0:20, N=1000, omega=1, it should look like a square wave. The function basically sums a series of sine functions and approximates a square wave. Using your code, it doesn't do that... Any other ideas? Thanks!
Torsten
Torsten 2017-4-19
Try
t=0:2/pi/100:2/pi
omega=1;
N=1000;
summe = 0.0;
for k=1:N
summe = summe + sin(omega*t*(2*k-1))/(2*k-1);
end
plot(t,4/pi*summe)
Best wishes
Torsten.

请先登录,再进行评论。

更多回答(3 个)

Jan
Jan 2017-4-17
You cannot run a loop from 1 to infinity in Matlab. Either solve the summation symbolically or find out, if this sum converges and you can use a certain number of elements to get the result with a wanted accuracy.
  1 个评论
Me29
Me29 2017-4-17
Sorry failed to mention, assume the limit of the summation is a real value input from the user. I just need the setup for the FOR loop.

请先登录,再进行评论。


Arzu Ahmadova
Arzu Ahmadova 2019-5-22
Hi,
Could you explain please how to code more than 2 different inifinite sums in loop?

daniel domshlak
daniel domshlak 2020-3-29
i=0;
x = input ('choose the initial value : ');
y = input ('choose final value : ');
n=(x:y);
summe=0;
for i=x:y
a=(i*2+1).^3;
summe = summe + a;
end
summe
  3 个评论
daniel domshlak
daniel domshlak 2020-3-29
if someone finds a way to shorten this, don't hassitate to sahare.

请先登录,再进行评论。

类别

Help CenterFile 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