2da Evaluación II Término 2015-2016, Febrero 2016 /FIEC
Tema 3. (50 puntos) Se le ha pedido ayuda con el desarrollo de un sistema para el control de campos petroleros.
Se le ha indicado que la información de los campos petroleros se encuentra en un archivo estructurado con los siguientes atributos: código, nombre, ubicación (fila,columna), y número de barriles producidos. A continuación se muestra un ejemplo:
1|Campo Bolívar|0,2|97 2|Campo Zamora|3,0|86 3|Campo Tungurahua|4,3|101 4|Campo Pastaza|2,1|78
El atributo de ubicación sirve para realizar una representación de los campos en una matriz de n xm como si fuera el mapa de algún sitio. Por ejemplo:
0 | 1 | 2 | 3 | 4 | |
0 | 1 | ||||
1 | |||||
2 | 4 | ||||
3 | 2 | ||||
4 | 3 | ||||
5 |
Esta representación permitirá la generación de reportes acerca de los campos petroleros. Un reporte necesario es uno que permita saber cuantos campos petroleros hay en un área buscada y cuantos barriles en total se producen en esa área. Por ejemplo:
Área del punto (0,1) al (4,3) ‐> hay 3 campos petroleros y se producen 276 barriles
Se le pide:
1. Implementar una función cargarInformacion(nombreArchivo) que retorna un diccionario con la información de los campos petroleros.
2. Implementar la función u bicarCamposPetroleros(diccionario, n, m) que recibe un diccionario y retorna una matriz de nxm de numpy con la ubicación de los campos petroleros. Asuma que n y m son dimensiones válidas para que la matriz contenga los campos petroleros descritos en el archivo.
3. Implementar la función r eporteArea(matriz, diccionario, puntoInicio, puntoFin) que recibe una matriz de numpy, un diccionario, y dos tuplas (puntoInicio y puntoFin) que está compuesta por dos coordenadas de fila y columna; y retorna unatupla con el número de campos petroleros y números de barriles producidos en esa área.
Ejemplo:
reporteArea(matriz, diccionario, (0,1), (4,3)) retorna 3, 276
0 | 1 | 2 | 3 | 4 | |
0 | 1 | ||||
1 | |||||
2 | 4 | ||||
3 | 2 | ||||
4 | 3 | ||||
5 |