You are on page 1of 1

Carrera: I.T.I.

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.