Azzera filtri
Azzera filtri

How to make variables in a while loop be an array

1 visualizzazione (ultimi 30 giorni)
Could anybody help me with this please? I am trying to work out a optimisation problem. I am using a while loop. I am able to obtain results in an array e.g. result(n).however, I am not able to make variable "n" as an array,hence, the value that I can access is always the last n value appeared. I would like to know how to make the variables into an array form that I can access the optimal result,aslo the corresponding variable "n" value.
  3 Commenti
zhe li
zhe li il 2 Nov 2011
Thank you very much for your response Mr Jiang. However, I may have not explained my problem properly. As the "n" shown should be the variables,hence please have a look the loop written and hoping make it more clear,
idx = 0;
while ....
result(n) = ....
n = n + 1; %!
all_n(idx) = n; %! ???????????????
end
Which as the "result" will be in an array, I can use "max" function to obtain the optimal result,however, I can not obtain a corresponding "n" value,for instance, if the results look at [result(n)]= 1 4 6 8 3, and n is always showning as n=1, n= 2,n=3,n=4,n=5. however,the optimal result appeared as the fourth term,which the corresponding n value should be n=4. I hope I have explained my problem clearly. please help me with this problem. Many thanks.
zhe li
zhe li il 2 Nov 2011
Sorry, the initial value should be n=0 before the while loop.

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 2 Nov 2011
idx = 0;
while ....
n = ....
result(n) = ....
idx = idx + 1; %!
all_n(idx) = n; %!
end
Then later you can (for example)
for K = 1 : idx
this_n = all_n(idx);
disp(result(this_n))
end
  4 Commenti
Walter Roberson
Walter Roberson il 2 Nov 2011
[maxvalue, maxidx] = max(result);
Then the index of the maximum value is maxidx
This does not require that the n be recorded.
zhe li
zhe li il 2 Nov 2011
Thanks a million Mr Roberson. I think I got the answer. I really appreciate your help.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by