3Eva_IIT2015_T3 funciones matrices rotar, extraer

3ra Evaluación II Término 2015-2016, Febrero 16, 2016 /ICM00794

Tema 3. (25 puntos)
a) Elabore una función rotando(matriz, k) que reciba una matriz de tamaño nxm y realice la rotación de sus datos con el valor k de 1, 2 o 3 que corresponden a los múltiplos de 90° de rotación a la derecha.
Nota: NO use la función numpy.rot90(m, k), se debe mostrar las operaciones realizadas con los elementos de la matriz para la rotación

rotarmatriz

b) Realice una función extraeresquina(matriz, k, t) que dada una matriz, extraiga una parte de la esquina k, de tamaño t.
Los valores de k corresponden a la esquina de interés: 0 (superior izquierda), 1 (superior derecha), 2 (inferior derecha), 3 (inferior izquierda).

Ejemplo:
>>referencia=extraeresquina(codigo,0,8)
… Ver matriz en figura “referencia” del tema siguiente.

Rúbrica: definir función (5 puntos), literal a dimensión resultante (5 puntos), rotación (5 puntos), rotar k veces (5 puntos), literal b (5 puntos)

3Eva_IIT2015_T1 Mensajes en redes sociales y etiquetas

3ra Evaluación II Término 2015-2016, Febrero 16, 2016 /ICM00794

Tema 1  (25 puntos). En redes sociales un mensaje puede contener palabras etiquetadas, también conocidas como “hashtag” por iniciar con el símbolo ‘#’ para resaltar un tópico en particular.

a) Realice una función etiquetados(mensaje), que al recibir un mensaje, busque y retorne las palabras etiquetadas.
Considere que las etiquetadas terminan al encontrar un espacio o una coma, y que también encontrarse al último el mensaje.

Ejemplo:
>> mensaje='En la #ESPOL se usa aprendizaje por proyectos y entre pares, publicado #ELUNIVERSO el domingo 7 de febrero'
>> etiquetados(mensaje)
     ['#ESPOL', '#ELUNIVERSO']
>> mensaje='IX Semillero de Futuros Científicos e Ingenieros Inscripciones #AJA #FCNM #ESPOL'
>> etiquetados(mensaje)
     ['#AJA','#FCNM', '#ESPOL']

b) Elabore una función tabulando(palabras) que reciba una lista de palabras que pueden ser repetidas y genere una tabla con las palabras únicas junto al conteo de las veces que aparece cada una en la lista.

>>palabras=[‘#ESPOL’, ‘#ELUNIVERSO’, ‘#AJA’, ’#FCNM’, ‘#ESPOL’]
>>tabulando(palabras)
     [[#ESPOL,        2]
      [#AJA,          1]
      [#FCNM,         1]
      [#ELUNIVERSO,   1]]

Rúbrica: Definir función (5 puntos), buscar inicio de etiqueta (5 puntos), copiar una etiqueta (5 puntos), lista etiquetas (5 puntos), determinar únicas (5 puntos), contar etiquetas (5 puntos).


propuesta: sol_py

3Eva_IT2015_T3 Asignar bomberos forestales por grupo

3ra Evaluación I Término 2015-2016, Septiembre 22, 2015 /ICM00794

Tema 3. (20 puntos) En la provincia de Pichincha durante tres semanas los bomberos han enfrentado 11 incendios forestales graves, cada uno afecta a más de diez hectáreas de terreno. incendio forestal imagen cerca campus

Para ayudar, acudieron más de 150 bomberos de diferentes provincias del país.

Cada bombero se identifica con su código y número de provincia y se requiere formar grupos de trabajo, asignando líderes de la provincia local (17) Pichincha por conocer de las condiciones geográficas del terreno.

Ejemplo: para n=8 bomberos

registrados
bombero provincia
13 17 (Pichincha)
15 17 (Pichincha)
95 9 (Guayas)
103 13 (Manabí)
19 17 (Pichincha)
91 9 (Guayas)
234 24 (Santa Elena)
17 17 (Pichincha)

Escriba una función grupobombero(registrados, m, local) que reciba el listado de n bomberos registrados, organice los m grupos en una matriz, indicando el número de la provincia local siguiendo las condiciones expuestas.

Primero asigne a cada grupo los bomberos locales y luego complete con los de otras provincias. Ejemplo:

>> m=3
>> local=17
>> grupobombero(registrados,m,local)
Grupo 1 Grupo 2 Grupo 3
13 15 19
17 95 103
91 234 0

Observe que: el registro de los bomberos no es ordenado; los grupos se completan mientras existan bomberos que asignar, sino se representa con 0 (cuando m no es múltiplo de n).

Referencia: Las hectáreas dañadas por los incendios ascendieron a 973 (17.09.2015). http://www.elcomercio.com
Bomberos costeños en Quito para combatir incendios forestales (16.09.2015). http://www.eluniverso.com/

Rúbrica: Definir función y parámetros (5 puntos), control del grupos (5 puntos), asignar locales (5 puntos), completar matriz (5 puntos).


registrados = [[ 13, 17],
               [ 15, 17],
               [ 95,  9],
               [103, 13],
               [ 19, 17],
               [ 91,  9],
               [234, 24],
               [ 17, 17]]
m = 3 
local = 17 
>> grupobombero(registrados,m,local) 
[[13  15  19], 
 [17  95 103], 
 [91 234   0]]

3Eva_IT2015_T2 Deletrear un número

3ra Evaluación I Término 2015-2016, Septiembre 22, 2015 /ICM00794

Tema 2 (25 puntos). Al elaborar una factura o cheque, se escribe el valor numérico con dos decimales y también el valor en forma de texto.

Realice una función deletrearnumero(valor) que reciba el valor, número positivo menor que mil y con dos decimales, para convertirlo a su equivalente en texto.

Ejemplos:
8.43 ocho con 43/100
23.15 veintitrés con 15/100
435.16 cuatrocientos treinta y cinco con 16/100
>>deletrearnumero(435.16)
cuatrocientos treinta y cinco con 16/100

Sugerencia: use la función del tema anterior. Use listas con los nombres de números.

Rúbrica: Definir la función (5 puntos), separar entero (5 puntos), convertir a palabras (10 puntos), añadir centavos (5 puntos)

3Eva_IT2015_T1 Maquina con monedas

3ra Evaluación I Término 2015-2016, Septiembre 22, 2015 /ICM00794

Tema 1 (25 puntos). Para despachar dinero en efectivo con una maquina automática realice lo siguiente:

a) Escriba una función separanum(valor), que reciba un valor numérico real y separe las cantidades en un vector que contiene:
centavos, unidades, decenas, centenas, etc.
Los centavos equivalen a usar dos decimales redondeado al entero más cercano.
Desarrolle el algoritmo usando operaciones de cociente y residuo (no use round()).

>>separanum(435.16)
 [16, 5, 3, 4]
centavos unidades decenas centenas
16 5 3 4

b) Realice una función cuantasmonedas(centavos) que reciba la cantidad de centavos a entregar con monedas de 1, 5, 10, 25, 50 centavos usado la menor cantidad de monedas.

>>cuantasmonedas(63)
[3, 0, 1, 0, 1]
monedas 1 5 10 25 50
cantidad 3 0 1 0 1

Rúbrica: Definir funciones (5 puntos), separar números (5 puntos), operaciones para redondear (5 puntos), literal b (10 puntos)

3Eva_IIT2006_T1 Crear usuarios en lista de nombres

3ra Evaluación II Término 2006-2007, Febrero 6, 2007 /ICM00794

Tema 1. (20 Puntos) Los “nombres de usuario” para una compañía se crean a partir de los nombres y el apellido paterno de sus empleados conformado de ocho (8) letras, usando una letra de cada nombre y el resto de su apellido.

a) Realice una función en matlab user(nombre1,nombre2,apellidop) que reciba los nombres y apellido paterno de un empleado y devuelva su “nombre de usuario”.

b) Escriba un programa en Matlab que registre en una lista los nombres de los n empleados de la compañía y muestre el listado de los “nombres de usuario”

Ejemplo:
Nombre1 Nombre2 Apellido Paterno Usuario
Juan Pedro Rodriguez jprodrig

2Eva_IIT2014_T3 Palabras monovocalicas en frase

2da Evaluación II Término 2014 – 2015, Febrero 24, 2015 /ICM00794

Tema 3. (25 puntos) Las palabras monovocálicas se construyen con la misma vocal repetida al menos dos veces y sin usar las otras vocales.

Ejemplos:
Detergente, acampanada, entretener, horroroso.

a) Realice una función monovocal(palabra) que indique si una palabra es o no monovocálica.

>>> monovocal('entretener')
1
>>> monovocal('entretenido')
0

b) Escriba un programa que reciba una frase y cuente las palabras monovocálicas que contiene. Suponga que las palabras están separadas solo por espacios.

>>>¿Frase?: un oso horroroso rondaba por el rancho
 palabras monovocálicas en la frase: 2

Rúbrica: definir función (5 puntos), validar y contar vocales (10 puntos), separar palabras (5 puntos) Programa estructurado (5 puntos)

2Eva_IIT2014_T1 Multas por invadir carril metrovía

2da Evaluación II Término 2014 – 2015, Febrero 24, 2015 /ICM00794

Tema 1. (15 puntos) Circular por el carril exclusivo de buses de transporte público “Metrovía” representa al conductor o dueño del vehículo doble infracción, cuya multa final se compone de dos partes:

a) por regulaciones de Ordenanza Municipalidad: multa de $ 354.00 (un salario mínimo), por reincidir en esa falta la multa subirá a $708.00 (dos salarios mínimos).

b) por infringir la Ley de Tránsito y el Código Integral Penal: multa de $ 35.40 (10% del salario mínimo) y tres puntos menos en la licencia.

Realice una función multametrovia(veces, básico) que dado el número de veces que un conductor cometió la infracción y el salario básico vigente, retorne el valor total de la multa acumulada, suponiendo que no se han pagado las anteriores.

>>>multametrovia(1, 354.00)
389.4
>>>multametrovia(2, 354.00)
1132.8
>>>multametrovia(3, 354.00)
1876.2

Referencia: Tres conductores reinciden en invadir carril de Metrovía, según ATM, 18-feb-2015. www.eluniverso.com

Rúbrica: Definir función (3 puntos), acumular multas por veces (8 puntos), algoritmo estructurado (4 puntos)

2Eva_IT2014_T3 Imagen RGB a gris

2da Evaluación I Término 2014 – 2015, Septiembre 02, 2014 /ICM00794

Tema 3. (25 puntos) Al digitalizar una imagen a color se usa la técnica RGB, por lo que se requieren tres versiones de imagen correspondiente a cada color.

Si la imagen es de nxm pixeles y cada color es una matriz rectangular, al combinarlas crea una matriz tridimensional de nxmx3.

Para convertir una imagen RGB a una imagen en tonos de gris elabore una función fotoagris(imagen) que reciba la matriz imagen(n,m,3) que representa la imagen en formato RGB y la convierta a tonos de gris que es una matriz nxm.

RGB rojo imagen
rojo
RGB verde imagen
verde
RGB azul imagen
azul

Equivale gris
imagen(n,m,1)
0 255 255
0 0
255  …
imagen(n,m,2)
0 255 0
255 0
255
imagen(n,m,3)
0 255 0
0 255
255
Gris(n, m)
0 255 76
149 29
255

Nota: para convertir el color de cada punto o pixel puede usar la función convertirgris(RGB) del tema anterior, considerando que el color se envía como un vector de 3 elementos.

Rúbrica: Definir función (5 puntos), manejo de matriz (10 puntos), conversión por pixel (5 puntos), matriz resultante (5 puntos)

2Eva_IT2014_T2 Programar una Función color RGB a gris

2da Evaluación I Término 2014 – 2015, Septiembre 02, 2014 /ICM00794

Tema 2 (20 puntos). RGB (en inglés Red, Green, Blue) representa un color mediante la mezcla por adición de luz de tres colores primarios a diferentes proporciones o intensidades. RGB Modelo proyector

Por ejemplo, los televisores analógicos y proyectores de imagen digital usan la técnica RGB con los valores entre 0 a 255 para cada color: rojo, verde y azul.

Al usar una impresora láser monocromática (B&N), se convierte el color RGB a un tono de gris ponderando un 0.2989 de rojo, el 0.5870 del verde y 0.1140 del azul, que es el efecto de cada color en el brillo de la imagen. paleta de color

Realice una función denominada convertirgris(RGB) que dado un color RGB como un vector, lo convierta a su equivalente numérico en tonalidad de gris. Valide que cada color de origen se encuentre en el rango de 0 a 255, sino entrega el valor de -1 como error.

Ejemplos de equivanlentes RGB
Color RGB Gris
Negro [0,0,0] 0
blanco [255,255,255] 255
rojo [255,0,0] 76
verde [0,255,0] 149
azul [0,0,255] 29
>> rgb=[255, 0, 0];
>> cambiagris(rgb)
ans = 76

Rúbrica: Definir función (5 puntos), validar colores (5 puntos), operaciones (5 puntos)