how to skip the index of array

40 visualizzazioni (ultimi 30 giorni)
Shehab Tarek
Shehab Tarek il 27 Mag 2020
Risposto: Tommy il 27 Mag 2020
i have the index array =[1,2,1,2,4]
the output matrix =[2,3,4,5,6]
the second output matrix=[1,3,4,5,6]
the third output matrix=[2,3,4,5,6]
and so on

Risposta accettata

Tommy
Tommy il 27 Mag 2020
Alternatively,
idx = [1,2,1,2,4];
N = 6; % max index
out = repmat(1:N, numel(idx), 1)';
out = reshape(out(out ~= idx), [], numel(idx))';
The rows in out are your outputs:
>> out
out =
2 3 4 5 6
1 3 4 5 6
2 3 4 5 6
1 3 4 5 6
1 2 3 5 6

Più risposte (1)

Stanislao Pinzón
Stanislao Pinzón il 27 Mag 2020
Maybe something like this:
A = [1,2,1,2,4];
for i=1:length(A)
B=1:6;
B(A(i))=[];
disp(B);
end

Community Treasure Hunt

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

Start Hunting!

Translated by