conditional statements and while loop

2 visualizaciones (últimos 30 días)
msh
msh el 24 de Nov. de 2014
Comentada: msh el 24 de Nov. de 2014
Hi,
I have the following while loop
while (dif1 > tol) && (dif2 > tol) && (dif3 > tol)
procedure
end
I want all the conditions to be simultaneously satisfied. However, when I execute the code, the second condition dif2 > tol is not satisfied although the algorithm stops.
what I am doing wrong here ?
  3 comentarios
msh
msh el 24 de Nov. de 2014
Editada: msh el 24 de Nov. de 2014
I see. Then this is not what I want. I need ALL conditions to be satisfied in the same time. That is, I need the loop to go on, until ALL three are false. How I should modify the conditions then?
Star Strider
Star Strider el 24 de Nov. de 2014
The double operands ‘&&’ and ‘| | ‘short circuit’ the comparisons. See: Logical Operators: Short-Circuit && | |. If the first is false, it will not evaluate any of the others.

Iniciar sesión para comentar.

Respuesta aceptada

Adam
Adam el 24 de Nov. de 2014
while (dif1 > tol) || (dif2 > tol) || (dif3 > tol)
should work if you want to carry on until all are false.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements 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