How to solve a simple if loop

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?

 采纳的回答

Matt Fig
Matt Fig 2012-12-15
编辑:Matt Fig 2012-12-15
  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 个评论

4. Assignment statements cannot be with ().
Good catch, Walter.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by