How to avoid the "if" statement

5 visualizzazioni (ultimi 30 giorni)
qingtao
qingtao il 17 Apr 2013
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

Risposta accettata

Desiree Phillips
Desiree Phillips il 17 Apr 2013
Modificato: Desiree Phillips il 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 Commento
qingtao
qingtao il 17 Apr 2013
Thanks Desiree Phillips! This helps a lot

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by