Filter löschen
Filter löschen

value of variable is changed in iteration

1 Ansicht (letzte 30 Tage)
summyia qamar
summyia qamar am 15 Dez. 2016
Kommentiert: summyia qamar am 15 Dez. 2016
a=[2 2.8];b=[2.8 3];c=[2.5 3];d=[2 2.8];e=[2.5 3];f=[2.8,3];g=[2.5 3];
m=[];
for z=a;
for y=b;
for x=c;
for w=d;
for v=e;
for u=f;
for t=g;
f=48*z+33*y+10*x+37*w+30*v+45*u+64*t;
m=[m;z y x w v u t f]
end
end
end
end
end
end
end
the 5th iteration shown is result is
m =
2 2.8 2.5 2 2.5 2.8 2.5 648.4
2 2.8 2.5 2 2.5 2.8 3 680.4
2 2.8 2.5 2 2.5 3 2.5 657.4
2 2.8 2.5 2 2.5 3 3 689.4
2 2.8 2.5 2 3 689.4 2.5 31560
and so on the values of 6th colume are changed while I have given the values f=[2.8 3]..why it is selecting 689.4 in next iteration?
  4 Kommentare
José-Luis
José-Luis am 15 Dez. 2016
Please look at my answer that does what you want, in a simpler way.
Please accept the answer that best solves your problem.
summyia qamar
summyia qamar am 15 Dez. 2016
but there's no option for answer acceptance here

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

José-Luis
José-Luis am 15 Dez. 2016
Bearbeitet: José-Luis am 15 Dez. 2016
Is this what you are trying to do?
a=[2 2.8];
b=[2.8 3];
c=[2.5 3];
d=[2 2.8];
e=[2.5 3];
f=[2.8,3];
g=[2.5 3];
[A,B,C,D,E,F,G] = ndgrid(a,b,c,d,e,f,g);
result = [A(:),B(:),C(:),D(:),E(:),F(:),G(:)];
temp_var = (48 .* A) + (33 .* B) + (10 .* C) + (37 .* D) + (30 .* E) + (45 .*F) + (64 .* G);
result = [result, temp_var(:)];
  1 Kommentar
summyia qamar
summyia qamar am 15 Dez. 2016
oh thanks alot.its done..I want to represent the vales 2, 2.5,2.8,3 as W1,W2,W3,W4 in the final matrix..how is it possible. I tried (==)method but its not working

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Adam
Adam am 15 Dez. 2016
Why would you ever choose to do this in 7 nested for loops?!
You could do this far quicker just using the original a, b, c etc rather than z, y, x in a loop.
What is the final result you are trying to achieve?
As far as your bug goes though you are reassigning f in your loop which is also used as one of your original variables. Rename this and it will probably do what you want.
  1 Kommentar
summyia qamar
summyia qamar am 15 Dez. 2016
actually I'm just a beginner in matlab that's why doing in basic steps

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by