Introducción a la Programación

Introducci´ on a la Programaci´ on Cuarto Parcial Mayo 18 de 2013 Consideraciones Generales Esta evaluaci´ on es estrictamente individual. Cualquier

1 downloads 37 Views 474KB Size

Recommend Stories


De la A a la Z. De la A a la Z 1
De la A a la Z G gato Gato ga·to, ta s. 1 Mamífero felino y carnicero, doméstico, de cabeza redonda, lengua muy áspera y pelo espeso y suave, que e

De la A a la Z. De la A a la Z 1
De la A a la Z P paz Paz paz (pl. paces) s.f. 1 Ausencia de guerra: La paz permitió la recuperación económica del país. ANT. guerra. 2 Tratado o co

GUITARREANDO de la A a la Z
DANNY PERICH CAMPANA GUITARREANDO de la A a la Z WWW.CANCIONERODELAPATAGONIA.CL GUITARREANDO de la A a la Z Danny Perich Campana GUITARREANDO d

ÁLGEBRA MATRICIAL. 1. La traspuesta de A es A; (A ) = A. 2. La inversa de A 1 es A; (A 1 ) 1 = A. 3. (AB) = B A
´ ALGEBRA MATRICIAL. 1. La traspuesta de A0 es A; (A0 )0 = A. 2. La inversa de A−1 es A; (A−1 )−1 = A. 3. (AB)0 = B 0 A0 . 4. Las matrices A0 A y AA0

Tenemos derecho a la vida y a la salud
sexto Grado - Unidad 3 - Sesión 18 Tenemos derecho a la vida y a la salud En esta sesión, los estudiantes profundizarán, por medio de la discusión y

Story Transcript

Introducci´ on a la Programaci´ on

Cuarto Parcial Mayo 18 de 2013

Consideraciones Generales Esta evaluaci´ on es estrictamente individual. Cualquier violaci´on a esta norma ser´a considerada como fraude. Tiene 2 horas para realizar el examen. S´ olo puede sacar lapicero, l´ apiz y borrador. No se puede sacar: celulares (Blackberry, iPhone, etc), computadores y/o cualquier dispositivo electr´ onico. Cualquier violaci´ on a esta norma ser´a considerada como fraude. No se permite el pr´estamo de ning´ un objeto (l´apices, borradores, etc.), ni hablar con sus compa˜ neros o mirar el examen de ellos. El fraude ocasiona la apertura de un proceso disciplinario. Debe hacer contrato por cada funci´ on que implemente. El contrato vale el 20 % de la calificaci´on de cada pregunta.

Bomberman es un juego creado en los a˜ nos 80 para las consolas de videojuegos de esa ´epoca. El juego consiste en un personaje, Bomberman, que utiliza bombas para abrirse camino por un laberinto. Cada vez que pone una bomba, las 4 casillas adyacentes (vertical y horizontalmente, no las diagonales) son afectadas por la explosi´on. Es decir, cuando Bomberman pone una bomba se destruyen las paredes adyacentes a ´esta. Un ejemplo de un estado del juego se muestra a continuaci´on. En el primer estado de este juego, Bomberman ha puesto la bomba junto a una pared de ladrillo. En el siguiente estado esa pared de ladrillo ya no est´a, es destruida. Este juego se puede modelar por medio de una matriz, en donde las paredes de ladrillo se representen por una ’m’, los muros de hormig´on (indestructibles) se representen por una ’h’, los espacios vac´ıos con el n´ umero 0 y Bomberman con el n´ umero 1. Por ejemplo, un estado del juego puede ser: [[h, [h, [h, [h, [h,

h, 0, 0, 0, 1,

h, 0, h, 0, h,

h, 0, 0, m, 0,

h, 0, h, m, h,

h], 0], 0], 0], 0]]

P´agina 1 de 6

Introducci´ on a la Programaci´ on Cuarto Parcial 1. 5 Puntos Implemente una funci´ on en Python que retorne una lista de dos elementos correspondientes a la posici´on en x y y de Bomberman en la matriz. Note que Bomberman puede estar en cualquier posici´ on de la matriz.

2. 10 Puntos Implemente una funci´ on en Python que reciba una matriz del juego y una posici´on (i, j) en la matriz. La funci´ on debe retornar la matriz modificada con el efecto de poner una bomba en dicha posici´ on. Recuerde que no es v´ alido poner bombas sobre paredes ni muros de hormig´on.

P´agina 2 de 6

Introducci´ on a la Programaci´ on Cuarto Parcial 3. 10 Puntos Suponiendo que existe solo un u ´nico camino libre (de ceros) desde Bomberman hasta una salida representada por una ’s’, implemente una funci´on en Python que dada la matriz, retorne una lista con el camino a seguir por Bomberman desde su posici´on inicial hasta la salida ’s’.

P´agina 3 de 6

Introducci´ on a la Programaci´ on Cuarto Parcial Suponga que en estos momentos estamos a 25 de Noviembre de 2013 y el Campeonato de la F´ormula 1 reci´en ha culminado en Brasil el d´ıa de ayer. En nuestras manos tenemos la informaci´on presentada a nosotros por la Federaci´on Internacional del Autom´ ovil (FIA) en donde se nos dan a conocer los resultados finales de cada uno de los Grandes Premios (carreras) disputados durante el campeonato. Asimismo, se nos brinda la informaci´ on de cada piloto participante en la gran carpa del automovilismo. Dichos datos se nos entregan organizados de la siguiente manera: Pilotos = [[1,"Vettel","Sebastian","Red Bull","Alemania"] [2,"Webber","Mark","Red Bull","Australia"] [3,"Alonso","Fernando","Ferrari","Espana"] [4,"Massa","Felipe","Ferrari","Brasil"] [5,"Button","Jenson","McLaren","Inglaterra"] [6,"Perez","Sergio","McLaren","Mexico"] [7,"Raikkonen","Kimi","Lotus","Finlandia"] [8,"Grosjean","Romain","Lotus","Francia"] [9,"Rosberg","Nico","Mercedes","Alemania"] [10,"Hamilton","Lewis","Mercedes","Inglaterra"] [11,"Hulkenberg","Nico","Sauber","Alemania"] [12,"Gutierrez","Esteban","Sauber","Mexico"] [14,"di Resta","Paul","Force India","Escocia"] [15,"Sutil","Adrian","Force India","Alemania"] [16,"Maldonado","Pastor","Williams","Venezuela"] [17,"Valtteri","Bottas","Williams","Finlandia"] [18,"Vergne","Jean-Eric","Toro Rosso","Francia"] [19,"Ricciardo","Daniel","Toro Rosso","Australia"] [20,"Pic","Charles","Caterham","Francia"] [21,"Van der Garde","Giedo","Caterham","Holanda"] [22,"Bianchi","Jules","Marussia","Francia"] [23,"Chilton","Max","Marussia","Inglaterra"]] Carreras = [["Australia",[7,3,1,4,10,2,15,14,5,8,6,18,12,17,22,20,23,21,19,9,16,11]], ["Malasia",[1,2,10,9,4,8,7,11,6,18,17,12,22,20,21,23,5,19,16,15,14,3]], ["China",[3,7,10,1,5,4,19,14,8,11,6,18,17,16,22,20,23,21,9,2,15,12]], ["Bahrein",[1,7,8,14,10,6,2,3,9,5,16,11,15,17,4,19,20,12,22,23,21,18]], ["Espana",[3,7,6,2,1,9,20,10,11,19,22,16,8,14,21,23,12,17,18,4,5,15]], ["Monaco",[7,5,2,16,15,17,9,10,18,19,3,20,6,14,4,1,21,12,22,8,23,11]], ["Canada",[3,10,2,14,9,6,7,8,1,12,5,4,11,20,22,18,15,23,16,17,19,21]], ["Gran Bretana",[5,10,2,9,16,23,6,19,4,7,8,14,21,20,3,15,11,22,12,17,18,1]], ["Alemania",[1,7,11,9,2,8,4,6,18,2,5,19,10,3,14,20,23,12,17,21,15,16]], ["Hungria",[7,2,4,5,6,19,3,1,15,11,9,10,22,12,14,17,21,23,16,8,18,20]], ["Belgica",[3,2,4,7,17,20,23,1,22,8,5,15,9,6,10,21,11,19,18,14,12,16]], ["Italia",[7,15,2,3,1,4,12,20,17,8,10,5,23,22,21,14,18,6,16,9,11,19]], ["Singapur",[5,9,8,4,3,20,10,2,18,1,7,16,22,21,23,15,19,14,6,11,17,12]], ["Corea del Sur",[1,7,5,4,3,21,10,5,8,6,2,18,22,15,19,16,17,9,20,12,23,14]], ["Japon",[5,3,7,10,8,6,15,1,16,21,19,2,23,17,9,18,12,22,20,11,4,14]], ["India",[3,1,7,8,22,2,6,4,21,5,11,19,9,15,23,12,16,20,17,10,14,18]], ["Abu Dhabi",[16,8,3,10,7,9,6,19,2,22,5,11,14,17,1,23,12,4,15,18,21,20]], ["Estados Unidos",[1,10,7,17,4,22,19,6,5,2,3,16,11,9,12,15,21,20,23,8,14,18]], ["Brasil",[3,4,6,2,12,18,10,16,7,1,5,21,9,22,23,17,15,11,20,14,19,8]]

P´agina 4 de 6

Introducci´ on a la Programaci´ on Cuarto Parcial La informaci´on suministrada por la FIA son dos matrices, una de pilotos y otra de carreras. La matriz de pilotos tiene tantas filas como pilotos hayan corrido y cada columna representa un dato del piloto: su n´ umero, su apellido, su nombre, su equipo y su nacionalidad. Por otro lado, la matriz de carreras posee 19 filas, es decir, el n´ umero de carreras en el campeonato, y dos columnas, en donde la primera es el lugar donde se corre el Gran Premio y la segunda una lista con los resultados de la carrera. Es importante saber que el orden de los n´ umeros de los pilotos en la lista suministrada en la segunda columna, muestra la posici´on de cada uno de ellos al final de dicha carrera. La FIA ha establecido una nueva puntuaci´ on para cada piloto durante las carreras, de la siguiente manera: solamente los 4 primeros pilotos punt´ uan y los valores que se le dan a cada posici´on es la siguiente: 1→ 25 puntos, 2→ 18 puntos, 3→ 11 puntos, 4→ 3 puntos. 4. 15 Puntos Realice un procedimiento en Python que imprima cada piloto y su respectiva cantidad de puntos en pantalla (deben aparecer 32 l´ıneas conteniendo los siguientes datos: n´ umero del piloto, nombre, apellido, escuder´ıa, pa´ıs y cantidad de puntos obtenidos). No es necesario ordenar los pilotos teniendo en cuenta su puntaje final, tan s´ olo se pide que se muestren los datos de cada piloto m´as los puntos obtenidos durante el campeonato.

P´agina 5 de 6

Introducci´ on a la Programaci´ on Cuarto Parcial 5. 15 Puntos Realice un procedimiento en Python que imprima: 1. El piloto campe´ on de F´ ormula 1(su nombre, apellido, escuder´ıa, pa´ıs de origen y puntos acumulados). 2. La escuder´ıa triunfadora (su nombre y el puntaje total).

P´agina 6 de 6

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.