How to avoid the "if" statement

Hi,
I want to use a conditional term in an equation but don't want to use "if", simply because I want to explore something else.
Here is the problem,
E=A(2)*B+A(2)*C
where A=[a,b].
Here "a" is a flag. And I'd like to have:
If A(1)=1, E=A(2)*B+C
if A(2)=2, E=B+A(2)*C
How this can be realized without the "if" statement?
Thanks a lot

 Accepted Answer

Desiree Phillips
Desiree Phillips on 17 Apr 2013
Edited: Desiree Phillips on 17 Apr 2013
Hi qingtao,
You mention 'a' is the flag, does that mean your second if statement should actually read:
if A(1)=2, E=B+A(2)*C
Either way, you can use logical statements as the coefficients for each equation. For example,
E = (A(1)==1)*(A(2)*B+C) + (A(1)==2)*(B+A(2)*C);

1 Comment

Thanks Desiree Phillips! This helps a lot

Sign in to comment.

More Answers (0)

Categories

Community Treasure Hunt

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

Start Hunting!