how to manipulate the output of a for loop to get the sum of the output data set

1 vue (au cours des 30 derniers jours)
Please i need hint on how to manipulate the output from a for loop do summation of differences between it and a data set. An example is shown below. I tried it but it only computed for the first for loop neglecting the other data set.
for f = [1 4 8 10];
b=2;
c=1;
d=1;
n=4;
N= f*b*c*d
M=[4.5 10 20 25];
Y = (M-N)/M;
Z=(100/n);
A =(sum(Y)*Z);
end
disp(A)

Réponse acceptée

Mischa Kim
Mischa Kim le 15 Avr 2014
Modifié(e) : Mischa Kim le 15 Avr 2014
Segun, are you trying to compute the cumulative sum?
A = 0;
for f = [1 4 8 10]
b = 2; c = 1; d = 1; n = 4;
N = f*b*c*d;
M = [4.5 10 20 25];
Y = (M-N)/M;
Z = 100/n;
A = A + sum(Y)*Z;
end
disp(A)
  3 commentaires
Mischa Kim
Mischa Kim le 15 Avr 2014
Could you be more specific? What are your inputs and what is the expected output?
segun
segun le 15 Avr 2014
Thanks for your help.What I mean is that I run the above program using matlab I got an answer of 40.25 .To crosscheck whether it is correct I did the manipulation manually I got 48.89.This shows something is wrong somewhere.

Connectez-vous pour commenter.

Plus de réponses (1)

Deepana
Deepana le 15 Avr 2014
Modifié(e) : Deepana le 15 Avr 2014
Can you tel more about what exactly your looking for?
  1 commentaire
segun
segun le 15 Avr 2014
Thanks the one that is giving problem is the use of "goto" statement in matlab to make the computer go to a particular line and repeat the whole process down if a condition is not met. Just an example not the complete program as it is long. A= 0; for f = [1 4 8 10] b = 2; c = 1; d = 1; n = 4; N = f*b*c*d; M = [4.5 10 20 25]; Y = (M-N)/M; Z = 100/n; A = A + sum(Y)*Z; end if A<1; go to line (1) elseif A>1; end disp(A)

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by