Advertisement
Guest User

Imprimir binariooo

a guest
Apr 26th, 2016
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. PROCEDURE ImprimirBinario (a: Binario);
  2. (* Imprime en orden inverso.
  3.    La indentacion de cada nodo es su nivel. *)
  4.  
  5.    PROCEDURE ImprimirNodos (a: Binario; espacios: CARDINAL);
  6.    VAR espaciosImpresos : CARDINAL;
  7.    BEGIN
  8.       espaciosImpresos := 1;
  9.       espacios := espacios + 1;
  10.       IF TieneHijoDerecho(a) THEN
  11.          ImprimirNodos(a^.derecho, espacios);
  12.       END;
  13.       WHILE espaciosImpresos <= espacios DO
  14.          WriteString(" ");
  15.          espaciosImpresos := espaciosImpresos + 1;
  16.       END;
  17.       WriteString(InfoAString(a^.info));
  18.       WriteLn();
  19.       IF TieneHijoIzquierdo(a) THEN
  20.          ImprimirNodos(a^.izquierdo, espacios);
  21.       END;
  22.    END ImprimirNodos;
  23.  
  24. BEGIN
  25.  
  26.    ImprimirNodos(a, 0);
  27.  
  28. END ImprimirBinario;  
  29.    
  30. END Binario.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement