How to do a simple elementwise logic in a matrix?

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 Commenti

Sounds like homework. What have you tried?
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...

Accedi per commentare.

 Risposta accettata

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

Più risposte (0)

Categorie

Scopri di più su Simulink in Centro assistenza e File Exchange

Richiesto:

MJ
il 19 Dic 2013

Risposto:

il 19 Dic 2013

Community Treasure Hunt

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

Start Hunting!

Translated by