de Gestión/Sistemas (Plan viejo/nuevo) Fecha: 2 de septiembre del 2004
Asignatura: Programación I Hora: 11:30 Material auxiliar: Ninguno 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) Código Asignatura: 103 Convocatoria: Septiembre 1ªPP 41(Gestión plan antiguo) Semana: 1ª 53(Sistemas plan nuevo) Código Asignatura: 103 54(Gestión plan nuevo) Tipo de Examen: 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: 7.- Después de la ejecución de P(x,y), la variables x e y tienen los NOT(NOT(A OR B) AND NOT(A)) valores: Toma el mismo resultado que: VAR x, y: INTEGER; A. NOT (A OR B) … B. A OR B PROCEDURE P(VAR y: INTEGER; z: INTEGER); C. B OR (A AND B) BEGIN D. A AND B x:=y-1; y:= z; z:=y; 2.- En Modula-2, el fragmento de código: VAR Diametro : Radio*2; END P; A. Es una declaración correcta si Radio es una variable … B. Es una declaración incorrecta siempre x:=2; y:=1; C. Es una declaración correcta si Radio es un tipo P(x,y); D. Es una declaración correcta siempre ... ¿ Ha codificado en la hoja de lectura óptica el campo A. x vale 0, y vale 1 convocatoria Septiembre -1ªsemana? B. x vale 2, y vale 1 3.- Dado el siguiente fragmento de código en Modula -2 C. x vale 1, y vale 0 … D. x vale 1, y vale 1 PROCEDURE f(x: REAL): INTEGER; ... 8.- Dado el código: ¿cuál de las siguientes líneas de código es correcta? ........ A. f(3.0); A:= 5; B. v:=2.0*f(3.0); INC(DEC(A)+1); C. v:=2*f(3); ........ D. v:=2*f(3.0); el valor final de A: 4.- Si se codifica como subprograma una operación que se invoca varias A. 6 veces en distintos puntos del programa: B. 5 A. el tiempo de ejecución aumenta C. no se puede calcular B. empeora la claridad del programa D. 7 C. disminuye la eficiencia en ocupación de memoria D. se le deben pasar argumentos por referencia 9.- Si un programa P utiliza un Tipo Abstracto de Datos no 5.- ¿Cuál de la siguientes afirmaciones es CIERTA? opaco T, la modificación de la realización de T implica en el peor A. La función CAP(c) está disponible y CHR(x) se importa. de los casos cambios en: B. La función CHR(x) está disponible y CAP(c) se importa. A. El módulo de implementación de T C. Las funciones CAP(c) y CHR(x) se importan. D. Las funciones CHR(x) y CAP(c) están disponibles sin que se B. El módulo de definición de T declaren previamente. C. Los módulos de definición e implementación de T 6.- La simplificación de las condiciones de contorno: D. Los módulos de definición e implementación de T, y P A. Emplea siempre un centinela Antes de contestar a esta pregunta, asegúrese de haber B. Disminuye la necesidad de memoria completado sus datos personales en esta hoja. C. Aumenta la claridad del programa 10.- Son operaciones válidas entre conjuntos con resultado otro conjunto: D. No se puede utilizar con formaciones anidadas 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.