Está en la página 1de 2

EXAMEN FINAL – EJERCICIOS

1) Se desea diseñar una base de datos para una Universidad que contenga información
sobre los Alumnos, las Asignaturas y los Profesores. Construir un modelo E/R y obtener
las tablas del modelo relacional normalizadas hasta 3FN teniendo en cuenta las
siguientes restricciones:

a. Una asignatura puede estar impartida por muchos profesores (no a la vez) ya que
pueden existir grupos.
b. Un profesor puede dar clases de muchas asignaturas.
c. Un alumno puede estar matriculado en muchas asignaturas.
d. Se necesita tener constancia de las asignaturas en las que está matriculado un
alumno, la nota obtenida y el profesor que le ha calificado.
e. También es necesario tener constancia de las asignaturas que imparten todos los
profesores (independientemente de si tienen algún alumno matriculado en su
grupo).
f. No existen asignaturas con el mismo nombre.

2) Dadas las siguientes tablas, dar una expresión SQL para cada una de las siguientes
consultas:

Vive (#nombre, calle, ciudad)


Trabaja (#nombre, #compañía, salario)
Situada (#compañía, ciudad)
Dirige (#nombre, #nombre_director)

a. Encontrar el nombre y la ciudad de todos los empleados que trabajan en El Corte


Inglés.
b. Encontrar todos los empleados que viven en la misma ciudad que la compañía en la
que trabajan.
c. Encontrar el salario y la compañía de todos los directores.
d. Encontrar a todos los empleados que viven en la misma ciudad y en la misma calle
que su director.
e. Encontrar a todos los empleados que trabajan en más de una compañía.

3) Dada la siguiente tabla de procesos:

Proceso Tiempo
creación CPU E/S CPU E/S CPU E/S CPU
A 0 1 2 1 2 1 - -
B 1 1 1 1 2 1 - -
C 2 2 1 2 1 1 1 1
D 4 4 - - - - - -

Dibujar el diagrama de ocupación para los siguientes algoritmos:


a. FIFO
b. Round-robin, con q=1
c. Prioridades, suponiendo que las prioridades son 3 para A y B, 2 para C, y 1 para D,
y que la prioridad más alta es la 1.
4) Proponer una función recursiva que recibiendo como parámetros una cadena de dígitos
hexadecimales y su longitud, devuelva el valor decimal que representa dicha cadena. La
función tendrá la forma:

int Hex2Dec(char* cadena_hex, int longitud);

5) Diseñar un circuito combinacional que recibe como entrada un número de 3 bits y nos
lo devuelve a la salida codificado según la siguiente tabla:

Original Codificado
0 6
1 1
2 4
3 7
4 0
5 5
6 2
7 3

6) Supón que se ha asignado el bloque de red 156.32.0.0

a. Define una máscara de red que permita tener 100 hosts por cada subred. ¿Cuál es el
máximo número de hosts que pueden asignarse a cada subred? ¿Cuál es el máximo
número de subredes que pueden definirse? Especifica las subredes en formato
decimal.

b. Define una máscara de red que permita tener 50 subredes, con el máximo número
de hosts por cada subred. ¿Cuál es el máximo número de hosts que pueden
asignarse a cada subred? ¿Cuál es el máximo número de subredes que pueden
definirse? Enumera el rango de direcciones de host que pueden asignarse a las
subred #6 así como la dirección de esta red. ¿Cuál es la dirección de difusión para la
subred #6?

7) Realizar un shell-script que reciba como argumentos números comprendidos entre 1 y


75. Dará error en caso de que algún argumento no este dentro del rango y terminará sin
hacer nada. En caso contrario generará una línea por cada argumento con tantos
asteriscos como indique su argumento.

También podría gustarte