Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {-----------------------------------------------------------------------------
- CREARLISTA - Genera una lista con n?meros aleatorios }
- procedure crearLista(var l: Lista);
- var
- n: integer;
- begin
- l:= nil;
- n := random (20);
- While (n <> 0) do Begin
- agregarAdelante(L, n);
- n := random (20);
- End;
- end;
- {-----------------------------------------------------------------------------
- IMPRIMIRLISTA - Muestra en pantalla la lista l }
- procedure imprimirLista(l: Lista);
- begin
- While (l <> nil) do begin
- write(l^.dato, ' - ');
- l:= l^.sig;
- End;
- end;
- {-----------------------------------------------------------------------------
- CONTARELEMENTOS - Devuelve la cantidad de elementos de una lista l }
- function ContarElementos (l: listaNivel): integer;
- var c: integer;
- begin
- c:= 0;
- While (l <> nil) do begin
- c:= c+1;
- l:= l^.sig;
- End;
- contarElementos := c;
- end;
- {-----------------------------------------------------------------------------
- AGREGARATRAS - Agrega un elemento atr?s en l}
- Procedure AgregarAtras (var l, ult: listaNivel; a:arbol);
- var nue:listaNivel;
- begin
- new (nue);
- nue^.info := a;
- nue^.sig := nil;
- if l= nil then l:= nue
- else ult^.sig:= nue;
- ult:= nue;
- end;
- {-----------------------------------------------------------------------------
- IMPRIMIRPORNIVEL - Muestra los datos del ?rbol a por niveles }
- Procedure imprimirpornivel(a: arbol);
- var
- l, aux, ult: listaNivel;
- nivel, cant, i: integer;
- begin
- l:= nil;
- if(a <> nil)then begin
- nivel:= 0;
- agregarAtras (l,ult,a);
- while (l<> nil) do begin
- nivel := nivel + 1;
- cant:= contarElementos(l);
- write ('Nivel ', nivel, ': ');
- for i:= 1 to cant do begin
- write (l^.info^.dato, ' - ');
- if (l^.info^.HI <> nil) then agregarAtras (l,ult,l^.info^.HI);
- if (l^.info^.HD <> nil) then agregarAtras (l,ult,l^.info^.HD);
- aux:= l;
- l:= l^.sig;
- dispose (aux);
- end;
- writeln;
- end;
- end;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement