필터 지우기
필터 지우기

How can I write a 'for' loop that sums up all elements of a vector?

조회 수: 35 (최근 30일)
Seif
Seif 2024년 7월 17일 14:07
편집: Voss 2024년 7월 18일 13:08
For instance, I have vector a = 1 2 3 4 5, or simply a=[1:5]. How can I write a 'for' loop that sums up all the elements while showing intermediate results? I want the last result to be 15, as in, 1+2+3+4+5. So far I've only managed to sum up elements like this: 1+2 = 3, 2+3 = 5 and so on. What I want is a 'for' loop that factors in the previous summation and sums it up with the next.
The code I've written so far is:
a= [1:5]
for i=1:5
c=sum(a(i)+a(i+1))
disp(c)
end
  댓글 수: 1
VBBV
VBBV 2024년 7월 17일 16:17
@Seif you could also simply sum up all the elements in vector as below
a= 1:5
a = 1x5
1 2 3 4 5
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
for i=1:5
c=a(1:i);
disp(['The sum is ',num2str(sum(c))])
end
The sum is 1 The sum is 3 The sum is 6 The sum is 10 The sum is 15

댓글을 달려면 로그인하십시오.

채택된 답변

VBBV
VBBV 2024년 7월 17일 14:18
@Seif do you mean like this ?
a= [1:5]
a = 1x5
1 2 3 4 5
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
for i=1:3
c(i)=sum(a(i)+a(i+1))
disp(sum(c))
end
c = 3
3
c = 1x2
3 5
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
8
c = 1x3
3 5 7
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
15

추가 답변 (1개)

Voss
Voss 2024년 7월 17일 14:33
a = 1:5;
total = 0;
for ii = 1:numel(a)
total = total+a(ii)
end
total = 1
total = 3
total = 6
total = 10
total = 15
  댓글 수: 2
Seif
Seif 2024년 7월 17일 15:30
Thank you so much!
Voss
Voss 2024년 7월 17일 15:36
편집: Voss 2024년 7월 18일 13:08
You're welcome! Any questions, let me know.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

제품


릴리스

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by