3ra Evaluación I Término 2016-2017, Septiembre 13, 2016 /CCPG001
Tema 2. (50 puntos) Una empresa agrícola ha decidido integrar un dron (avión no tripulado) para monitorear el crecimiento de los cultivos en una de sus plantaciones con dimensión rectangular de MxN .
Referencia: “Drones vuelan para ver el estado de los cultivos”. eluniverso.com. 7 de febrero, 2015.
El dron usado puede de sensar el número de cultivos en una posicion=[i,j] usando una funcion sensarCultivos(posicion) que mueve el dron a la posición dada por una tupla y retorna un valor entero correspondiente al número de cultivos sensados.
Suponga que ésta función ya existe, por lo tanto no necesita ser implementada en el examen.
A partir de la información anterior, implemente las siguientes funciones:
a) generarplantacion(dimension) que recibe una tupla dimension=[M,N] de la plantación y procede a sensar los cultivos utilizando la funcion sensarcultivos(posicion) para cada una de las posiciones. Se obtiene una matriz plantacion con los valores del número de cultivos en cada posicion=[fila,columna].
b) analizarDensidad(plantacion, limite) que calcula una matriz con los grados de crecimiento de la plantación. La función recibe la matriz plantación del literal a y un límite que representa un parametro para determinar la densidad en una posicion. Una posición es considerada con crecimiento ‘BAJO‘ si tiene menos que el límite de cultivos, caso contrario se considera de crecimiento ‘ALTO‘. Al definir la función considere que el valor predeterminado del límite es 4. Ejemplo:
plantacion=[[5,3,2], [1,4,8], [2,3,1]] >>analizaDensidad(plantacion) retorna: [['ALTO','BAJO','BAJO'], ['BAJO','ALTO','ALTO'], ['BAJO','BAJO','BAJO']]
c) reporteCrecimento(plantacion,densidad) recibe las matrices de los literales a y b. Suponga que “surco” es equivalente a una fila de la matriz, y “parcela” es equivalente a una columna del surco. La función debe retornar una tupla de tres elementos con la siguiente información:
- los promedios de los cultivos por surcos
- las posiciones, relativas a cada surco, de las parcelas que tienen mayor número de cultivos en dicho surco.
- los promedios de cultivos de las parcelas para los grados de crecimiento ‘ALTO’ Y ‘BAJO’.
Por ejemplo, usando las matrices anteriores:
>>> reporteCrecimiento(plantacion,densidad) retorna: ([3.33333333, 4.33333333, 2.0], [0, 2, 1], [5.66667, 2.0]
Como referencia un ejemplo de un surco:
surco[0] = [parcela0, parcela1, parcela2]
Referencia: Archivo original 3Eva_IT2016.pdf