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 Comments

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...

Sign in to comment.

 Accepted Answer

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

More Answers (0)

Categories

Find more on Simulink in Help Center and File Exchange

Asked:

MJ
on 19 Dec 2013

Answered:

on 19 Dec 2013

Community Treasure Hunt

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

Start Hunting!