1. Nivel 1 Conocimiento
1.-A que estructura de datos corresponde la siguiente definición:
Colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se
conecta al siguiente por un enlace o referencia.
a) Pila
b) Cola
c) Arreglo
d) Lista
e) Árbol
Corresponde al nivel uno ya que solamente necesita identificar el concepto en concreto, y
además existe una consistencia en las respuestas ya que todas son estructuras de datos.
R.- d)
2.- Cual de los siguientes nodos son los que forman las listas doblemente enlazadas.
a) Nodos con un solo enlace que apuntan al nodo siguiente
b) Nodos con dos enlaces uno que apunte a un nodo predecesor y otro que apunte a un
nodo sucesor
c) Nodos con un solo enlace que apuntan al nodo siguiente a excepción del último que
apunta al primero.
d) Nodos con dos enlaces uno que apunte a un nodo predecesor y otro que apunte a un
nodo sucesor además el último apunta al primero y el primero apunta al último.
Corresponde al nivel uno ya que solamente necesita identificar los tipos de nodos que debe
contener la lista y además existe una consistencia en las respuestas ya que todos son tipod de
nodos.
R.- b)
2. Nivel 2 Comprensión
3.- Cual es la principal diferencia entre un arreglo y una lista enlazada.
a) Que la lista solo puede almacenar enteros y el arreglo cualquier tipo
b) Que la lista es un TAD y el arreglo No
c) Que la lista solo no tiene límite en el número de elementos a almacenar y el arreglo SI
d) Que en lista se puede implementar el método de búsqueda secuencial y en el arreglo NO
Es un problema donde se exige tener bien claras las características de un arreglo y una lista de las
cuales partir de ahí identificar la principal diferencia entre ambas.
R.- c)
4.- Que pasaría si se insertar un nodo en una lista vacía
a) El nodo se convertiría en el nodo inicial y final
b) Un error ya que necesitaría un nodo inicial
c) El nodo se posicionara antes de la referencia de inicio de la lista.
d) El nodo se posicionara hasta el final de la lista.
Es un problema donde se exige tener bien claro el proceso de insertar un nuevo nodo en una lista
y el cómo se afecta dicha lista.
R.- a)
Nivel 3 Aplicación
5.- Calcula el valor final de la variable x:
3. a) 4
b) 9
c) 10
d) 0
Para resolver esta pregunta es necesario conocer varios fundamentos propios del lenguaje de
programación, además reconocer la sintaxis y el flujo a través de la estructuras de control y al
final depurar el código para determinar el valor de x.
R.- a)
6.- Cual de las siguientes estructuras de repetición funcionaria mejor a la hora de recorrer para
realizar una búsqueda secuencial dentro de una lista.
a) for
b) do while
c) switch case
d) while
Para resolver este reactivo es necesario saber cómo funcionan las estructuras de repetición,
comprender como se realiza el recorrido en una lista para determinar cuál es la más adecuada.
R.- d)
4. Nivel 4 Análisis
7.- Si se cuenta con una base de datos de una escuela la cual cuenta con las tablas de alumnos
(matricula, nombre, dirección, teléfono y fecha_nacimiento) y materias (clave, nombre y sesiones)
las cuales se unen a través de una tabla auxiliar llamada cusan (matricula, clave y calificación).
Cuál de las siguientes consultas representa la solución a generar una consulta que regrese los
nombres y las calificaciones de las materias cursadas por el alumno “Eloy Contreras de Lira”
a) SELECT nombre,claificacion FROM cursa WHERE nombre = “Eloy Contreras de Lira”;
b) SELECT materias.nombre,cursa.claificacion FROM alumnos JOIN cursa JOIN materias
WHERE alumnos.nombre = “Eloy Contreras de Lira”;
c) SELECT materias.nombre,cursa.claificacion FROM alumnos JOIN cursa JOIN materias ON
alumnos.matricula = cursan.matricula AND cursan.clave = materias.clave WHERE
alumnos.nombre = “Eloy Contreras de Lira”;
d) SELECT nombre,claificacion FROM alumnos JOIN cursa JOIN materias ON
alumnos.matricula = cursan.matricula AND cursan.clave = materias.clave WHERE nombre
= “Eloy Contreras de Lira”;
Para resolver este planteamiento es necesario tener el conocimiento de los comandos y su
función, el haber comprendido como utilizarlos, haberlo aplicado en ejercicios anteriores y para
realizar esto analizar los para determinar la mejor solución al problema.
R.- c)
8.- Durante la clase de arreglos el profesor se dispuso a crear el siguiente método con la intención
de que le devolviera un arreglo con los múltiplos del 2 pero en cambio regreso el arreglo
siguiente:
3 4 5 6 7 8 9 10 11 12
Si el código hecho en clase fue el siguiente elija la mejor opción para corregirlo y que realmente
genere lo que pide.
5. a) Se debe de declarar una variable auxiliar que se inicie en cero y dentro del ciclo
multiplicarlo por i.
b) Dentro del ciclo cambiar la +2 por *2;
c) Cambiar el for por for (int i=0; i<20 < ; i+2)
d) Cambiar la declaración del arreglo por un arrglo de longitud 20
Este es un problema donde se exige saber conocer los conceptos de las estructuras de control asi
como los comandos de programación, comprenderlos, saber aplicarlos pero sobre todo analizar el
problema para pasmar la mejor solución.
R.- b)
Nivel 6 Evaluación
9.- El profesor de estructura de datos le pidió a Juan codificara el método para realizar una
búsqueda de un nodo en una lista enlazada. A lo cual Juan codificó lo siguiente:
6. En cuestiones de eficacia crees que sea la mejor manera de desarrollarlo;
a) Si, ya que cuenta con los pasos necesarios para realizarlo
b) No, porque es preferible utilizar un for.
c) No porque no está validado para cuando la lista este vacía.
d) Si, ya se realiza el menor número de asignaciones y comparaciones.
En este reactivo se pretende que se elija una de las mejores respuestas que a su criterio sería la
más conveniente para satisfacer el cuestionamiento. Para lo cual es necesario tener el
conocimiento, del lenguaje, interpretarlo pero sobre todo saber aplicarlo en casos concretos, ya
que se hayan desarrollado estas competencias será necesario analizar el código para determinar
cuál es la mejor solución.
R.- c)
10.- En base al siguiente caso evalué si se utilizó la metodología de desarrollo de software
adecuada.
7. “En la empresa IBM Guadalajara, un equipo desarrolló una aplicación web educativa en solo seis
meses y el equipo utilizó la metodología RAD.
a) Si porque es una metodología rápida y muy sencilla de utilizar.
b) No, porque dicha metodología es para proyectos grandes y se requiere documentar en cada
fase.
c) Debieron utilizar RUP ya que es la más completa y produce proyectos de excelente calidad.
d) Si porque dicha metodología es muy rápida pero pudieron utilizar cualquier otra.
Para el razonamiento de esta pregunta se requiere de identificar correcta mente las metodologías
de desarrollo de software, interpretarlas y aplicarlas, pero sobre todo es necesario analizar bien el
caso para determinar cuál es la mejor opción.
R.- a)