How to solve a simple if loop

1 vue (au cours des 30 derniers jours)
Patty Oikawa
Patty Oikawa le 15 Déc 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);
What am I doing wrong?

Réponse acceptée

Matt Fig
Matt Fig le 15 Déc 2012
Modifié(e) : Matt Fig le 15 Déc 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 commentaires
Walter Roberson
Walter Roberson le 15 Déc 2012
4. Assignment statements cannot be with ().
Matt Fig
Matt Fig le 15 Déc 2012
Good catch, Walter.

Connectez-vous pour commenter.

Plus de réponses (0)


En savoir plus sur Introduction to Installation and Licensing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by