How to solve a simple if loop

2 visualizaciones (últimos 30 días)
Patty Oikawa
Patty Oikawa el 15 de Dic. de 2012
I have a variable that ranges between 0.01 and 0.62. I want to find all values of that single vector that exceed 0.59 and make them equal 0.59.
I tried running an if statement and it runs with no errors, but the variable does not change (there are still #s in that variable that are greater than 0.6). the code I have now that doesn't work:
if Theta>0.59
then (Theta=0.59);
end
What am I doing wrong?

Respuesta aceptada

Matt Fig
Matt Fig el 15 de Dic. de 2012
Editada: Matt Fig el 15 de Dic. de 2012
  1. There is no such thing as an IF loop.
  2. IF statements do not filter elements out of an array.
  3. MATLAB does not use a THEN keyword.
Use this instead:
Theta = min(Theta,.59);
You could also do it this way:
Theta(Theta>.59) = .59;
  2 comentarios
Walter Roberson
Walter Roberson el 15 de Dic. de 2012
4. Assignment statements cannot be with ().
Matt Fig
Matt Fig el 15 de Dic. de 2012
Good catch, Walter.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing 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