- See for, for loop to repeat specified number of times
- Matlab doesn't honor the syntax you propose
For loop with multiple variables
42 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Vaishali Nagpure
am 13 Jan. 2018
Bearbeitet: Jan
am 13 Jan. 2018
As in java we have "for (int i = 0, j = 1, k = 2; i < 5; i++)"
I would like to do as
for st = 1:numel(pointst) , ed = 1:numel(pointed)
What is the way i can do this kind of operation
3 Kommentare
Greg
am 13 Jan. 2018
How are j and k not acting as constants here?
for (int i = 0, j = 1, k = 2; i < 5; i++)
Akzeptierte Antwort
Jan
am 13 Jan. 2018
Bearbeitet: Jan
am 13 Jan. 2018
If you want this:
Java: for (int i = 1, j = 0; i <= limit; i++, j++)
in Matlab:
j = 0;
for i = 1:limit
j = j + 1;
...
end
Less nice alternatives:
index = [1:limit; ...
1:limit];
for k = 1:size(index, 2)
i = index(1, k);
j = index(2, k);
...
end
or
index = [1:limit; ...
1:limit];
for k = index
i = k(1);
j = k(2);
...
end
The last one might look strange. The FOR loop evaluates the given index vector along the 2nd dimension, such that the column vectors are assigned to k.
Maybe this is useful for you:
indexI = 1:limit;
indexJ = 1:limit; % Of course this is a test data only
for k = 1:numel(index1)
i = indexI(k);
j = indexJ(k);
...
end
0 Kommentare
Weitere Antworten (1)
Rik
am 13 Jan. 2018
If you mean a nested loop:
for st = 1:numel(pointst)
for ed = 1:numel(pointed)
end
end
Siehe auch
Kategorien
Mehr zu Performance and Memory finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!