Examen Final - Clases A Toda Hora

Anuncio
C lasesATodaHora.com.ar
P rogramación II
>
Exámenes
>
ORT > P rogramación II
Examen Final
Febrero de 2000
C lasesATodaHora.com.ar
1. Dado un Árbol Binario no vacío cuyos nodos contienen números enteros y un valor entero.
Se pide:
a) Definir la estructura en P ascal (parte declarativa: C ONST, TYP E y VAR).
b) Desarrollar un procedimiento recursivo con los parámetros necesarios y suficientes, que elimine del árbol los nodos HOJAS que sean
múltiplos del valor dado.
c) Escribir las instrucciones necesarias para la llamada al procedimiento desarrollado en b), indicando claramente qué parámetros utiliza y sus
valores.
Ejemplo:
(80)
/
\
(50)
(100)
/ \
/
\
(20) (70) (90) (200)
/
/
/
\
(60) (85) (150) (300)
Si Valor dado = 2 ---> el Árbol quedaría:
(80)
/ \
(50)
(100)
\
/
\
(70) (90) (200)
/
(85)
2. Dada la siguiente declaración y procedimiento recursivo:
Type
TLISTA = ^ P NODO;
P NODO = Record
DATO: Integer;
SIG: TLISTA
End;
Var
LIST, M : TLISTA;
P rocedure C AVERNA (Var L:TLISTA; Var M:TLISTA; N:Integer);
Var
X, AUX: TLISTA;
Begin
if L <> Nil Then
Begin
C AVERNA (L^.SIG, M, N);
if (L^.DATO MOD N = 0) Then
Begin
X := L^.SIG;
AUX := M;
M:= L;
L:= X;
M^.SIG := AUX
End
End;
End;
Se pide:
Desarrollar el seguimiento del procedimiento C AVERNA indicando claramente el contenido y actualización de las variables, graficando las
modificaciones de la lista y mostrando cómo queda luego de la ejecución, cuando se realiza la siguiente secuencia de llamada:
M := nil;
C AVERNA (LIST, M, 3);
Descargar