Introducción a la Programación

Transcripción

Introducción a la Programación
Introducción a la Programación
Tercer Parcial
Mayo 29 de 2010
Nombre:
Código:
Pregunta
1
2
3
Total
Puntos
10
15
25
50
Cal.
Parte 1 (10 Puntos)
En el clásico juego de buscaminas, el objetivo es descubir dónde están las posiciones de la matriz
que no contienen una mina. Cuando el jugador selecciona una posición de la matriz(suponiendo
que en esta no hay mina) el juego despliega en la misma posición el número total de minas que
hay alrededor de dicha posición.
Su tarea consiste en realizar una función que retorna cuántas minas hay alrededor de una posición dada por el usuario o si en esta posición existe una mina. La función, además, recibirá como
parámetro la matriz del juego en donde cada elemento puede ser un 0 indicando que no hay
mina en dicha posición y un 1 indicando que sı́.
Ejemplo: Note que en la figura de arriba, la posición (3,4) hay 3 minas alrededor.
Página 1 de 2
Introducción a la Programación
Tercer Parcial
Parte 2 (15 Puntos)
Una fábrica de textiles, decidió abrir una lı́nea de producción en la cual se confeccionan banderas
de tela. Un bandera se conforma de una serie de colores de una longuitud dada. Teniendo en
cuenta que usted ha sido contratado para automatizar el proceso de fabricación de banderas,
realice un programa, que como resultado retorna una lista de la forma de la bandera.
Los parámetros necesarios para la realización de una bandera son: una lista con los colores que
la componen y otra lista que indica cuanta longuitud de cada color hacen la bandera:
Ejemplo:
Colores = [’Amarillo’, ’Azul’, ’Rojo’]
Bandera = [3, 2, 1]
Resultado = [’Amarillo’, ’Amarillo’, ’Amarillo’, ’Azul’, ’Azul’, ’Rojo’]
Parte 3 (25 Puntos)
Un juego infantil popular llamado slide puzzle que consiste en armar una imagen de forma
coherente deslizando sus piezas, tiene una variación hecha con números la cual se ilustra en la
siguiente imagen:
Teniendo en cuenta que el juego se puede representar por medio de una matriz con dimensiones
cuadras(3x3, 4x4, 5x5, nxn) y que el espacio vacı́o se representa por medio de un asterı́sco(*).
Realice:
a) Una función que retorna(como una lista de 2 elementos) en qué posición se encuetra el
vacio. (5 puntos)
b) Si el jugador desea deslizar la pieza ubicada en una posición(parámetro), realizar una
función que indica si se puede o no mover esa pieza y hacia qué dirección(’izq’, ’der’,
’arr’, ’aba’). (10 puntos)
c) Por último realice una función booleana que indica si el juego está bien armado. (10
puntos)
Página 2 de 2

Documentos relacionados