Creating a loop with an empty Matrix

7 visualizaciones (últimos 30 días)
William Diaz
William Diaz el 10 de En. de 2019
Comentada: William Diaz el 10 de En. de 2019
I'm working on a code that requires me to replace the values in an empty matrix with new ones. I'm trying to do this using a while loop but can't seem to get it right can anyone provide some insight as to how I should continue? I was thinking something along the lines of this:
M=zeroes(5)
while M 'contains a zero'
x=randi(5)
Y=randi(5)
M(x,y)='Replavement Value Function'
end
This issue I'm having is I don't understand how to write the while loop such that it will continuously perform this operation until M no longer contains a zero.

Respuesta aceptada

Guillaume
Guillaume el 10 de En. de 2019
Note: an empty matrix (a matrix whose any dimension is of size 0) and a matrix filled with 0s are two completely different things.
Prior to R2018b, use
while any(M(:) == 0)
to check if any element of M is equal to 0. In R2018b, you can use
while any(M == 0, 'all')
to do the same
  3 comentarios
Guillaume
Guillaume el 10 de En. de 2019
Use a counter incremented inside the loop:
counter = 0;
while any(M == 0, 'all')
counter = counter+1;
%...
end
William Diaz
William Diaz el 10 de En. de 2019
Perfect thank you

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by