ludzie dopomóżcie, bo mi łep odleci
jutro muszę oddać programik, a sypie mi się przeszukiwanie w głąb (DFS), poniżesze procedurki się tego tyczą, lecz coś jest nie tak  :| 

Procedure odwiedz(a:integer; k:TypWezla;var o:odwiedzeni; var w:integer; t:tab);
Var
  j,l,v : integer;  r:boolean;
Begin
r:=false;
  inc(w);
  o[w]:=k;
  for j:=1 to a do
    begin
    if (t[k,j]='1') then
      begin
      for l:=1 to a do
        begin
        if o[l]=j then r:=true;
        end;
      if r=false then
            begin
             odwiedz(a,j,o,w,t);
            end;
      end;
    end;
End;

procedure TForm1.Button12Click(Sender: TObject);
Var  i, j: TypWezla;    r:boolean;
Begin
label4.Caption:='';

For i:=1 To w Do o[i]:=0;
w:=0;
  For i:=1 To a Do
  begin
   For j:=1 To a Do begin
                    If o[j]=i Then r:=true;
                    end;
   if r=false then odwiedz(a,i,o,w,t);
  end;
  for i:=1 to a do
  Label14.Caption:=Label14.Caption+'v'+IntToStr(o[i])+' ';
  Label14.visible:=true;
end;

ktoś jest w stanie pomóc?