Advertisement
Guest User

Modula 2 de la muerte

a guest
Apr 20th, 2016
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. PROCEDURE BuscarABB (txt: TString; a: Binario): BoolBinario;
  2. (* Devuelve el subarbol que tiene como raiz al elemento cuyo dato de texto es
  3.    'txt' y el discriminador 'hayBinario' del elemento devuelto es TRUE.
  4.    Si 'txt' no pertenece a 'a', 'hayBinario' es FALSE. *)
  5.  
  6. VAR resultado : Binario;
  7.     encontroResultado : bool;
  8. BEGIN
  9.  
  10.    encontroResultado := FALSE;
  11.    resultado = NIL;
  12.    IF (TextoInfo(a^.elemento) == txt) THEN
  13.       resultado := a;
  14.    ELSIF NOT EsHoja(a) THEN
  15.       IF TieneHijoIzquierdo(a) THEN
  16.          resultado := BuscarABB(txt, a^.izquierdo);
  17.       END;
  18.       IF (resultado == NIL) AND (TieneHijoDerecho(a)) THEN
  19.          resultado := BuscarABB(txt, a^.derecho);
  20.       END;
  21.    END;
  22.    RETURN resultado;
  23.  
  24. END BuscarABB;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement