Var a: tPtNo; begin { corpo principal } PercPreOrdem(a);... a Visão esquemática da memória.

Post on 18-Apr-2015

108 views 0 download

Tags:

Transcript of Var a: tPtNo; begin { corpo principal } PercPreOrdem(a);... a Visão esquemática da memória.

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

...

a

Visão esquemática da memória

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Módulo

encerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Módulo

encerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Módulo

encerrado...

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

A B D E C F G

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Móduloencerrado...

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

Módulo

encerrado...

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

p

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

SaídaMódulo

encerrado...

A B D E C F G

procedure PercPreOrdem(p: tPtNo); begin    if p <> nil then begin Visita(p);    PercPreOrdem(p^.esq); PercPreOrdem(p^.dir);    end; end;

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

... p

Saída

A B D E C F G

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

...

Saída

A B D E C F G

Móduloencerrado...

a

Visão esquemática da memória

var a: tPtNo;

begin { corpo principal }

PercPreOrdem(a);

......

...

Saída

A B D E C F G