How to do a simple elementwise logic in a matrix?

1 Ansicht (letzte 30 Tage)
MJ
MJ am 19 Dez. 2013
Beantwortet: the cyclist am 19 Dez. 2013
Let's say I have A=[1 0.5 2; 0.5 1 1; 3 1 0.5];
I need to create a new matrix (with the same size as A) in which elements of A that are less than one are multiplied by 10 and those elements larger than one are multiplied by 100. I know how to do it with a 'for', but any better idea?
Thanks,
  2 Kommentare
the cyclist
the cyclist am 19 Dez. 2013
Sounds like homework. What have you tried?
MJ
MJ am 19 Dez. 2013
lol, it's not actually! I'm using this:
z1=(A<=1).*(A.*10)
z2=(A>1).*(A.*200)
then I don't know how to merge z1 and z2 together! I guess there should be a simpler way...

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

the cyclist
the cyclist am 19 Dez. 2013
You're so close!
(A<=1).*(A.*10) + (A>1).*(A.*100)
(You wrote 100 in your question, but used 200 in your code.)

Weitere Antworten (0)

Kategorien

Mehr zu Simulink finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by