Altillo.com > Exámenes > ORT > Programación II

Programación II

Examen Final

Agosto de 1999 Altillo.com

1. Dado un Árbol Binario de Búsqueda no vacío cuyos nodos contienen números enteros NO REPETIDOS y un valor que EXISTE en el árbol.
Se pide:
a) Definir la estructura en Pascal (parte declarativa: CONST, TYPE y VAR).
b) Desarrollar un procedimiento recursivo con los parámetros necesarios y suficientes, que devuelva la cantidad de nodos con valores menores al dado y un valor booleano en TRUE si el valor dado es mayor a todos sus descendientes y FALSE en caso contrario.
c) Escribir las instrucciones necesarias para la llamada al procedimiento desarrollado en b), indicando claramente qué parámetros utiliza y sus valores.

2. Dadas las siguientes declaraciones y el procedimiento RECU9908:
Type
    TyPt = ^TyNodo;
    TyNodo = record
                        VALOR : integer;
                        SIG : TyPt
                     end;
Var
    CONT : integer;
procedure RECU9908 (var P : TyPt; var QQ : integer);
var FUE : TyPt;
Begin
    if P<> NIL then
        if P^.VALOR mod 2 = 0 then
            begin
                FUE := P;
                P := P^.SIG;
                dispose(FUE);
                RECU9908 (P , QQ)
            end
        else
            begin
                QQ := QQ + 1;
                RECU9908 (P^SIG , QQ);
                writeln(P^.VALOR)
            end
End;

Se pide:
a) Realizar su seguimiento indicando claramente el contenido y actualización de las variables, graficando las modificaciones de la lista y mostrando cómo queda la pantalla luego de la ejecución, cuando se realiza la siguiente secuencia de invocación:
CONT := 0;
RECU9908 (L1 ; CONT);

b) Sin realizar otro seguimiento indicar cómo queda la lista L2 y mostrar la pantalla luego de la ejecución, cuando se realiza la siguiente secuencia de invocación:
CONT := 0;
RECU9908 (L2; CONT);

3. Sean los siguientes recorridos de un Árbol Binario:
PREORDEN : 11 22 33 44 55 66
INORDEN :    22 11 44 33 55 66
Se pide:
a) Dibujar el árbol
b) Decir si es Árbol Binario de Búsqueda. JUSTIFICAR.