Creating a function that identifies repeated items in a vector

2 visualizzazioni (ultimi 30 giorni)
I need help with creating this repeat function.
Write a function, repeat, that takes as input a vector of arbitrary length whose elements appear in random order. Determine whether the vector contains any repeated items. If it does, return true (1). Otherwise, return false(0). Test it in a program on the following vector: 11 22 33 44 55 66 77 99 11 102

Risposta accettata

Mohammad Abouali
Mohammad Abouali il 4 Dic 2014
Modificato: Mohammad Abouali il 4 Dic 2014
testVector=[11 22 33 44 55 66 77 99 11 102];
result=(numel(testVector)~=numel(unique(testVector)))
if testVector has repeated item results would be true; otherwise it would be false.
  2 Commenti
Sang Yeob Kim
Sang Yeob Kim il 5 Dic 2014
Modificato: Image Analyst il 5 Dic 2014
Based on your answer, I created the the function.
function repeat(v)
result=(numel(v)~=numel(unique(v)))
end
And I ran the program with the following:
>> w = [11 11 22 33 44]
w =
11 11 22 33 44
>> repeat(v)
result =
0
This should give out 1. I don't understand
Image Analyst
Image Analyst il 5 Dic 2014
Modificato: Image Analyst il 5 Dic 2014
You forgot to pass anything back! You need to pass "result" back out:
function result = repeat(v)
result = (numel(v) ~= numel(unique(v)));
end
Please mark the Answer as accepted if that works.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by