MATLAB Answers

0

If condition for a large number of different numbers

Asked by Filippos Papasavvas on 11 Aug 2018
Latest activity Answered by Ameer Hamza
on 11 Aug 2018
Hi!
I have a long array of random values [1 2 4 5 6 2 1 .....]. I take the maximum of the array and get an index value eg 50 for the position of the maximum value. I want if the index value = 1 or 1+kz or 1+2*kz, 1+3*kz,...,1+1000*kz (where kz is some natural number) to write the value of 1 in a new vector. If index value = 2 or 2+kz or 2+2*kz, 2+3*kz,...,1+1000*k I want to write the value 2 in a new vector. Due to the amount of values I'd prefer not to have to write explicitly each one of them in an 'if ...or...' form. I hope I explained this well.
Thanks for any help! Filippos

  0 Comments

Sign in to comment.

1 Answer

Answer by Ameer Hamza
on 11 Aug 2018

max() function returns both maximum value and its index.
[value, index] = max(array);
For the second part about 1+kz can you give a numeric example on a small vector.

  0 Comments

Sign in to comment.