Creating a loop with an empty Matrix
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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.
0 comentarios
Respuesta aceptada
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
el 10 de En. de 2019
Use a counter incremented inside the loop:
counter = 0;
while any(M == 0, 'all')
counter = counter+1;
%...
end
Más respuestas (0)
Ver también
Categorías
Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!