While loop for testing the end of vector (Matlab)

15 Ansichten (letzte 30 Tage)
Afluo Raoual
Afluo Raoual am 17 Feb. 2021
Kommentiert: Afluo Raoual am 17 Feb. 2021
Dear members,
If we have a long vector that we don't know its length, and we want use while loop to repeat the task than stop and exit from the loop when the vector length is at its end.
For example, if the vector length is 10000 bits so we repeat the calculation (of any task) until 10000 than we stop and exit.
But in my case, I don't know the length of my vector. So how can I program this please?
Thank you.

Akzeptierte Antwort

Rik
Rik am 17 Feb. 2021
You can use numel to create a loop over a vector of unknown size:
A=rand(1,100);
for n=1:numel(A) % n will go to 100
%your code here
end
  5 Kommentare
Rik
Rik am 17 Feb. 2021
You're welcome. If either answer solved your issue, please consider marking it as accepted answer. If you feel both answers solved your issue, pick the best one and give the other an upvote.
If your issue is not yet resolved, feel free to comment with your remaining issues.
Afluo Raoual
Afluo Raoual am 17 Feb. 2021
It's done

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Daniel Pollard
Daniel Pollard am 17 Feb. 2021
Bearbeitet: Daniel Pollard am 17 Feb. 2021
If you know that it's 1-dimensional, you can use
numel(vector)
which returns the length of your vector. Also useful to know is
size
which returns the size of a matrix (eg, [2 2] for a 2x2 matrix, [10 1] for a 10x1 vector, etc).
Edit I've replaced length with numel - thank you Rik.
  3 Kommentare
Daniel Pollard
Daniel Pollard am 17 Feb. 2021
This is news to me - I've used length multiple times without any issues. What exactly is the bug?
Rik
Rik am 17 Feb. 2021
The bug is not with length, the bug is with the use of length. For a vector it is equivalent to numel, and for array inputs it is probably not what you mean. How often did you want to loop over max(size(A)) without knowing which dimension is that maximum?

Melden Sie sich an, um zu kommentieren.

Kategorien

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

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by