fenceng.asv

来自「用MATLAB编的配电网自动化的一些程序」· ASV 代码 · 共 50 行

ASV
50
字号
function h=fenceng()
z=[11 6;6 13;13 12;12 14;14 7;7 9;7 16;16 3;3 8;3 17;12 5;5 4;4 15;4 1;5 10;10 2]
 d=qiu_d(z)
 m=[0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0] 
 t=[1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]
 b=[0 0 1 1 1 0 1 0 0 0 0 1 0 0 0 0 0]
 c=dc(d,m,t)
 q=[]
 [c1,c2]=size(c)
 h=zeros(1,c2)
 [m1,m2]=find(m==1)
 q(1)=m2
 h(m2)=-1
  mn=1
  sign=1
  h(q(1))=0
 while(length(q)~=0)
     a=q(1)
     q(1)=[]
    for i=1:c2
         if(c(a,i)==1&b(i)==0)
             h(i)=h(a)+1
            
             q=[i q]
         elseif(c(a,i)==1&b(i)==1)
             q=[i q]
             h(i)=h(a)
         end
     end
 end
for i=1:c2
    if(b(i)==1)
        h(i)=-1
    end
end
hh=max(h)

for i=1:hh
    i
    gg=1
    for j=1:c2
             if (h(j)==i)
              hie{i}(gg)=j
              gg=gg+1
             end
      end
  end
  for i=1:gg
  disp(hie(i))
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?