display 4 consecutive numbers in array

I have the Array a= 9 10 11 12 17 18 19 20 23 24 How can i get the code to display when the 4 indices are consecutive and when they appear. example: 9 10 11 12 and 17 18 19 20

 采纳的回答

Strangely enough, strfind also find patterns in numeric arrays:
a = [9 10 11 12 17 18 19 20 23 24];
indices = strfind(diff(a), [1 1 1])
See also Loren's blog on the subject of finding patterns for alternative algorithms.

更多回答(1 个)

a= [9 10 11 12 17 18 19 20 23 24];
for k=1:(length(a)-3) % k=2
if a(k:k+3)==(a(k):a(k)+3)
fprintf('repeition in position %g: \n',k);
disp(a(k:k+3));
end
end

2 个评论

Error using == Matrix dimensions must agree.
Error in hw3 (line 7) if a(i:i+3)==(a(i):(a(i)+3))
Kole
Kole 2014-10-8
编辑:Kole 2014-10-8
this is what i was going for but couldnt get it to work

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Data Types 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by