finding a sum of a vector without using the sum(x) function
조회 수: 1 (최근 30일)
이전 댓글 표시
I can make my program give the correct answer using the sum(x) function, but i can't use the sum(x) function. is there a way to use either a for or while loop to accomplish the same thing. my present code is:
clc;
clear all;
close all;
w = [1,1.2,.8,1];
x = [75, 80, 65, 78];
wa = 75;
for i = 1:1:length(x);
wa(i) = x(i)*w(i);
end
sum(wa(1:i)./i)
this yeilds the 75.25 answer that i should get. is there some simple that will fix the sum(wa(1:i)./i) I know that i can use the finite fix of wa(1)+wa(2)+...+wa(i), but i need it to work for any number of indexis of wa. as sum(wa(1:i)) does.
댓글 수: 0
채택된 답변
추가 답변 (1개)
Matt Fig
2012년 9월 12일
If you don't need all of the wa, you should just do a running sum.
w = [1,1.2,.8,1];
x = [75, 80, 65, 78];
wa = 0;
for ii = 1:1:length(x);
wa = wa + x(ii)*w(ii);
end
wa/ii
댓글 수: 0
참고 항목
카테고리
Help Center 및 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!