Carrera: Asignatura: Material auxiliar:
I.T.I. de Gestión/Sistemas (Plan viejo/nuevo) Programación I Ninguno
Fecha: 2 de septiembre del 2004 Hora: 11:30 Duración: 2 horas
RELLENE EN ESTA HOJA Y EN LA HOJA DE LECTURA ÓPTICA LOS SIGUIENTES DATOS: Apellidos:......................................................................................................Tlfno.:........................................ Nombre:........................................................................................................D.N.I.:......................................... Código Carrera:
40 (Sistemas plan antiguo) 41(Gestión plan antiguo) 53(Sistemas plan nuevo) 54(Gestión plan nuevo)
Código Asignatura:
Convocatoria: Septiembre 1ªPP Semana: 1ª
Código Asignatura: 103 Tipo de Examen:
? ? ?
103
D
El test debe ser contestado en la hoja de lectura óptica. Sólo una de las cuatro respuestas posibles de cada pregunta es correcta. El test es eliminatorio y aporta un 40% de la nota final. Son necesarias 7 respuestas correctas (5 con las prácticas aprobadas) para que se corrija el ejercicio. La solución del ejercicio se realizará en el reverso de esta hoja. No se corregirán hojas auxiliares.
ENTREGUE ÚNICAMENTE ESTA HOJA Y LA HOJA DE LECTURA ÓPTICA sin grapar TEST (cada respuesta correcta: 1punto; respuesta incorrecta o en blanco: 0 puntos)
1.- Si A = TRUE y B = FALSE, la expresión: NOT(NOT(A OR B) AND NOT(A)) Toma el mismo resultado que: A. NOT (A OR B) B. A OR B C. B OR (A AND B) D. A AND B 2.- En Modula-2, el fragmento de código: VAR Diametro : Radio*2; A. Es una declaración correcta si Radio es una variable B. Es una declaración incorrecta siempre C. Es una declaración correcta si Radio es un tipo D. Es una declaración correcta siempre ¿ Ha codificado en la hoja de lectura óptica el campo convocatoria Septiembre -1ªsemana? 3.- Dado el siguiente fragmento de código en Modula -2 … PROCEDURE f(x: REAL): INTEGER; ... ¿cuál de las siguientes líneas de código es correcta? A. f(3.0); B. v:=2.0*f(3.0); C. v:=2*f(3); D. v:=2*f(3.0); 4.- Si se codifica como subprograma una operación que se invoca varias veces en distintos puntos del programa: A. el tiempo de ejecución aumenta B. empeora la claridad del programa C. disminuye la eficiencia en ocupación de memoria D. se le deben pasar argumentos por referencia 5.- ¿Cuál de la siguientes afirmaciones es CIERTA? A. La función CAP(c) está disponible y CHR(x) se importa. B. La función CHR(x) está disponible y CAP(c) se importa. C. Las funciones CAP(c) y CHR(x) se importan. D. Las funciones CHR(x) y CAP(c) están disponibles sin que se declaren previamente. 6.- La simplificación de las condiciones de contorno: A. Emplea siempre un centinela B. Disminuye la necesidad de memoria C. Aumenta la claridad del programa D. No se puede utilizar con formaciones anidadas
7.- Después de la ejecución de P(x,y), la variables x e y tienen los valores: VAR x, y: INTEGER; … PROCEDURE P(VAR y: INTEGER; z: INTEGER); BEGIN x:=y-1; y:= z; z:=y; END P; … x:=2; y:=1; P(x,y); ... A. x vale 0, y vale 1 B. x vale 2, y vale 1 C. x vale 1, y vale 0 D. x vale 1, y vale 1 8.- Dado el código: ........ A:= 5; INC(DEC(A)+1); ........ el valor final de A: A. 6 B. 5 C. no se puede calcular D. 7 9.- Si un programa P utiliza un Tipo Abstracto de Datos no opaco T, la modificación de la realización de T implica en el peor de los casos cambios en: A. El módulo de implementación de T B. El módulo de definición de T C. Los módulos de definición e implementación de T D. Los módulos de definición e implementación de T, y P Antes de contestar a esta pregunta, asegúrese de haber completado sus datos personales en esta hoja. 10.- Son operaciones válidas entre conjuntos con resultado otro conjunto: A. Suma, diferencia e intersección B. Desigualdad, unión y diferencia C. Diferencia, intersección e inclusión D. Unión, intersección y diferencia
EJERCICIO DE PROGRAMACIÓN Realizar un tipo abstracto de datos para manejar y codificar mensajes de texto (compuestos únicamente por las 27 letras del alfabeto español) de usuarios de teléfono, con las operaciones: ? Generar_clave: la clave k será el resto de dividir el número de telé fono del usuario entre 27. ? Codificar_mensaje: sustituye cada letra del mensaje original por la que ocupa k posiciones más adelante en la secuencia del alfabeto. Sólo plan antiguo: ¿qué habría que hacer para decodificar los mensajes cifrados con este sistema? ¿Sería necesario crear una nueva operación para decodificar mensajes?
RECUERDE: La solución del ejercicio se realizará en el reverso de esta hoja. NO se corregirá lo que exceda de este espacio.