Info

This question is closed. Reopen it to edit or answer.

How can I do this matix?

1 view (last 30 days)
zeezo
zeezo on 26 Feb 2018
Closed: MATLAB Answer Bot on 20 Aug 2021
I have a matrix
a=[12 36 15 26 42 16 8 20]
I want to build a code that will read the matrix's elements and then see if the element < 40 it will take the element and divide by 2 if the element >40 it will stop and do not go through the rest elements
so in the example of a
It will takes the 12 and divide by 2 also 36, 15 and 26. When it reach 42 will divide it by 2 and stop there.
the element values might change
  3 Comments
David Fletcher
David Fletcher on 26 Feb 2018
What happens if the element is equal to forty?
Walter Roberson
Walter Roberson on 26 Feb 2018
"What happens if the element is equal to forty?"
It leaves it unchanged and continues. Just like the implication that any element from the first that is greater than 40 to the end are not to be changed.

Answers (1)

Walter Roberson
Walter Roberson on 26 Feb 2018
Edited: Walter Roberson on 26 Feb 2018
Use for and if and break
There is also a vectorized way to do it using find() and logical indexing. (Actually, you can do it without find() if you get your logical indexing right.)

This question is closed.

Community Treasure Hunt

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

Start Hunting!