Прежде всего вывод 'find_nbrs' представляет собой вектор строки. Я получаю следующее сообщение об ошибке (индексы подстрочные должны либо быть реальными положительными целыми числами или логические выражения.) В строке 13 при оценке следующий код:Ошибка индекса индекса Matlab
function [ N ] = componentt(A,m,found_list)
found_list=[m];
for i = find_nbrs(m,A)
found_list(length(found_list)+1)=i;
end
v=[];
for j=found_list
v=[v find_nbrs(j,A)];
end
v=unique(v);
while length(v)~= length(found_list)
found_list = [found_list v(end)];
for k=v
a=find_nbrs(k,A);
while ~ismember(a,found_list)
v(length(v)+1)=a;
end
end
end
N=sort(found_list); %The entries of the output vector are in increasing order.
end
какой номер строки 13? и можете ли вы опубликовать значения переменных – dnit13
строка 13: found_list = [found_list v (end)]; A - квадратная матрица, m - натуральное число между 1 и длиной (A), а found_list - пустой вектор []. – Federico
Возможный дубликат [индексы индексов должны быть либо реальными целыми положительными целями, либо логическими, общим решением] (http://stackoverflow.com/questions/20054047/subscript-indices-must-either-be-real-positive-integers-or- родовое-логические выражения-золь) – excaza