Search array for largest value of the desired format

1 visualizzazione (ultimi 30 giorni)
I have an array, data, I need to search through it to find 1000 , 2000 , 3000 , ... n
As many as exist in the array. 1000 will always exist and 32000 is the highest.
output should be 1 if just 1000, 2 if 1000 and 2000, 3 if 1000 2000 and 3000 exist in the array, data.
I can figure it out with a while and nested for loop but its too inefficient for what i am attempting to do.

Risposta accettata

KL
KL il 8 Nov 2017
Modificato: KL il 8 Nov 2017
Something like,
A = [1 2 1000 3 4 2000 4 3 3000];
B = (1:10)*1000;
res = nnz(ismember(A,B));
and if there are more than one of 1000/2000/etc, the value of res will be subsequently be higher.
  1 Commento
lightroman
lightroman il 8 Nov 2017
Modificato: lightroman il 8 Nov 2017
well 1000 can increase all the way to 32000 but really just any multiple of 1000.
Sorry that little detail was hard to read in 1000,2000,3000,....
EDIT: got it actually this will work thanks

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by