3Eva_IT2019_T2 Juego del ahorcado

3ra Evaluación I Término 2019-2020, Septiembre 13, 2019

Tema 2. (30 puntos)
Escriba un programa de Python que implemente un juego de adivinanzas de palabras.

Considere que para su programa ya están definidas las siguientes variables y función:

1. Una lista C de las categorías para el juego.

C = ['Transportes', 'Alimentos', 'Deportes', ...],

2. La función perteneceCategoria(palabra, categoria) que retorna True si palabra pertenece a la categoria, False en caso contrario.

3. El diccionario puntajes con el siguiente formato:

puntajes = {'Transportes':{'a':10, 't':4, 'f':5, ...},
            'Deportes': {'a':3, 'z':5, 't':10, ...},
             ... }

Para la implementación del juego considere las siguientes reglas:

r1. El jugador tiene cinco turnos para jugar

Para cada turno:

r2. El programa selecciona aleatoriamente una categoría de la lista C

r3. El programa le pide al jugador que ingrese una palabra para la categoría seleccionada en el paso r2

r4. Si la palabra pertenece a la categoría dada y no ha sido ingresada en un turno anterior, calcule los puntos totales para la palabra.
El puntaje de la palabra es la suma de los puntajes de cada una de sus letras, de acuerdo al diccionario puntajes.
Una letra tendrá puntajes distintos dependiendo de la categoría del paso r2.
Si la palabra no cumple con las condiciones, el jugador no obtiene puntos en ese turno

r5. En cada turno, muestre el puntaje obtenido para la palabra ingresada y el puntaje acumulado

Al final de los cinco turnos:

r6. El jugador habrá ganado si completa un mínimo de 500 puntos, muestre el mensaje correspondiente “Ganó” o “Perdió”.

1Eva_IT2019_T2 Consumo de datos por Aplicación

1ra Evaluación I Término 2019-2020, Julio 5, 2019
(Editado para tarea, se mantiene el objetivo de aprendizaje)

Tema 2. (20 puntos)  Asuma que tiene una lista con el consumo de datos de las aplicaciones en su celular durante un mes, semejante a lo mostrado en el siguiente ejemplo:

junio = ['Facebook-10Megas', 'Spotify-55Megas', 'Spotify-112Megas', 'Whatsapp-12Megas',...]

Observe que las aplicaciones en la lista se pueden repetir.

Muestre por pantalla la cantidad de “Megas” que ha utilizado durante el mes por cada aplicación.

1Eva_IT2015_T4 Asignar voluntarios a bloques por tipo de capacitación

1ra Evaluación I Término 2015-2016. Julio 7, 2015 /ICM00794

Tema 4. (20 puntos) Para el evento del Parque Samanes por la visita del Papa en Guayaquil el área del Parque se dividió en 32 bloques que tendrían el apoyo de voluntarios capacitados como se describe en el tema anterior.

Realice un algoritmo que reciba el listado de voluntarios y su tipo de capacitación, resultado del tema anterior, y los distribuya para cada bloque del parque por orden de lista y de forma equitativa por tipo de capacitación.

Muestre un nuevo listado indicando los voluntarios asignados a cada bloque.

Ejemplo: para n=8, m=4, bloques=2
 El máximo por tipo de capacitación= 8/4=2
 El máximo por tipo capacitación por cada bloque = (2/2)=1
voluntario capacita [voluntario] bloque [voluntario]
1 3 1
2 1 1
3 4 1
4 3 2
5 1 2
6 2 1
7 2 2
8 4 2

Nota: Un voluntario solo puede atender un bloque. Suponga que n es múltiplo de m.

Sugerencia: inicie asignando solo para un tipo y un bloque, revise el tipo de capacitación de cada voluntario y asigne siempre que el conteo sea menor que máximo por tipo y bloque, caso contrario cambie de bloque, reinicie los contadores y continúe asignando con el nuevo bloque hasta completar todos los voluntarios. Repita el proceso cambiando el tipo.

Rúbrica: ingreso (5 puntos), asignar ordenadamente al bloque (10 puntos), asignar equitativamente por tipo (5 puntos)

1Eva_IT2015_T3 Capacitar a voluntarios seleccionados aleatoriamente

1ra Evaluación I Término 2015-2016. Julio 7, 2015 /ICM00794

Tema 3. (30 puntos) Se registraron voluntarios para colaborar en el evento del Parque Samanes por la visita del Papa a Guayaquil.

Parque Samanes – Guayaquil

Para capacitar a los voluntarios,  identificados por un número, se requiere formar grupos equitativos (igual cantidad) para: orientar a las personas en al ingreso y salida, portar letreros y banderas, distribuir agua, prestar atención a discapacitados y quienes pudiesen tener algún problema de salud, entre otras.

Realice un algoritmo para distribuir a voluntarios en m tipos de capacitación en forma aleatoria, no repetida y equitativa; luego muestre el listado que indica la capacitación que recibirá cada voluntario.

Ejemplo: para n=8, m=4, maxtipo= 8/4 =2

voluntario capacita [voluntario]
1 3
2 1
3 4
4 3
5 1
6 2
7 2
8 4

Nota: Un voluntario solo puede asistir a una capacitación. Suponga que n es múltiplo de m.

Referencia: La república. Quito y Guayaquil ultiman detalles para visita del papa Francisco a Ecuador. 02.07.2015. http://www.larepublica.ec/blog/sociedad/2015/06/30/quito-y-guayaquil-ultiman-detalles-para-visita-del-papa-francisco-a-ecuador/

Rúbrica: ingreso y validación (5 puntos), sorteo capacitación única (5 puntos), cupos de capacitación (15 puntos), mostrar resultados (5 puntos).

3Eva_IIIT2007_T1 Fracción única función

3ra Evaluación III Término 2007-2008. Abril, 2008 /ICM00794

Tema 1 (30 puntos). Todo número racional positivo se puede expresar como suma de fracciones de numerador unitario y denominadores enteros positivos, todos distintos.

Ejemplos:
0.75 = 1/2 +1/4
0.85 = 1/2 + 1/3 +1/60

a) Realice una función en matlab fraccionunica(n) que reciba un número racional y muestre los denominadores enteros positivos diferentes.

b) Para probar la función, realice un programa de prueba que reciba un número racional entre 0 y 1, muestre el listado de los denominadores enteros positivos diferentes.

Nota: Inicie acumulando las fracciones 1/2, 1/3, 1/4, solo si no sobrepasa el valor de n.

1Eva_IIT2014_T3 Parasailing sin sobrecarga, parejas

1ra Evaluación II Término 2014-2015. Diciembre 9, 2014 /ICM00794

Tema 3. (25 puntos) Parasailing es un tipo de deporte extremo de playa promocionado para turistas que usa un paracaídas para dos personas atado e impulsado por una lancha.parasailing01

Por seguridad, la capacidad del paracaídas máxima es de 350 lb.

Dada la capacidad máxima y la lista de los pesos en libras para n turistas en la cola, realice un algoritmo para determinar las combinaciones posibles de parejas entre las personas en la cola de espera sin sobrecargar el paracaídas.

Ejemplo: capacidad máxima=350; Cola de espera:

i 1 2 3
pesos[i] 120 180 165

Referencia: publicado el 21-feb-2012. https://www.eltelegrafo.com.ec/noticias/deportes/1/el-parasailing-los-hace-sentirse-duenos-del-cielo

Rúbrica: ingreso de datos (5 puntos), seleccionar y comparar parejas (15 puntos), conteo de pareja (5 puntos)


propuesta: df_pdf, sol_py

1Eva_IT2014_T3 Pirámide Publifast

1ra Evaluación I Término 2014-2015. Julio 1, 2014 /ICM00794

Tema 3. (25 puntos) Nuevamente el juego de la pirámide fue usado como una estafa para muchos ciudadanos, en ésta ocasión usando publicidad en redes sociales. negociopiramide

Para demostrar que éste tipo de negocios es limitado, escriba un algoritmo que simule la situación conforme a la siguiente descripción:

  • Inicialmente hay una persona en la pirámide conocida como el promotor
  • En cada mes, para recibir los beneficios cada persona en la pirámide debe invitar un número fijo de k personas. Suponga que la pirámide crece uniforme cada mes con los invitados.
  • Cada persona al ingresar a la pirámide debe aportar una cuota en dólares.
  • El crecimiento ya no es posible cuando la cantidad de personas en la pirámide resulta ser mayor al número de personas en capacidad de aportar dinero a la pirámide. Ej: los habitantes m de un país.

Al final muestre cuántos meses funcionó la pirámide, cuántas personas formaron parte y el dinero recaudado.

Observación: La pirámide termina cuando ya no quedan suficientes nuevos aportantes. Por lo que lo recaudado es solo hasta ese mes.
Ref: http://www.eluniverso.com/noticias/2014/06/11/nota/3066307/sedujo-forma-facil-duplicar-su-dinero-web

Rúbrica: control de ciclos (5 puntos), control de crecimiento (10 puntos), resultados (10 puntos)

1Eva_IT2014_T2 Verificar EAN

1ra Evaluación I Término 2014-2015. Julio 1, 2014 /ICM00794

Tema 2. (25 puntos) El número EAN-13 (European Article Number) usado comercialmente en Europa en la identificación de productos, está constituido por 13 dígitos y con una estructura dividida en cuatro partes :
EAN13_ejemplo

  • 3 dígitos para el país,
  • 4 dígitos para la empresa,
  • 5 dígitos para el producto, y
  • un dígito de control.

El dígito de control permite detectar errores de lectura del código, calculado como:

  • Comenzando por la derecha, se multiplican los dígitos del código por 1 si su posición es par y por 3 si es impar,
  • Se suman los valores de los productos obtenidos,
  • Se resta a la decena superior el resultado de la suma, siendo el resultado el dígito de control.
7 7 0 2 0 0 4 0 0 3 5 0
x1 x3 x1 x3 x1 x3 x1 x3 x1 x3 x1 x3
7 21 0 6 0 0 4 0 0 9 5 0
Suma = 52
 decena superior = 60
 verificador calculado 60-52 = 8

Realice un algoritmo que dado un número EAN valide que sea de 13 dígitos, calcule el dígito verificador e informe si es correcto.

Referencia: http://es.wikipedia.org/wiki/European_Article_Number
Rúbrica: Ingreso y validación (5 puntos), cálculos por dígito (10 puntos), decena superior (5 puntos), resultado (5 puntos)

1Eva_IIT2013_T3 Juego Semillero

1ra Evaluación II Término 2013-2014. Diciembre 3, 2013 /ICM00794

Tema 3. (30 puntos) Semillero es un juego con n jugadores que buscan obtener al final más fichas de las que aportan para jugar.semillero
Todos los jugadores participan con m fichas, depositándolas en un recipiente común en el juego.

dadosEn cada turno, el jugador lanzará dos dados y obtendrá fichas del recipiente común equivalente a la suma de las caras superiores de los dados.
El juego termina cuando no quedan más fichas en el recipiente, mostrando: el jugador con más fichas, el jugador que vació el recipiente y las fichas obtenidas por jugador.

Realice un algoritmo que simule el juego descrito, considerando lo siguiente:

  • El número de fichas por participante m es igual para todos los participantes, mínimo 20 (validar)
  • Los turnos son rotativos: jugador 1, jugador 2, …, jugador n, jugador 1,  jugador 2, …, jugador n, …
  • El juego finaliza en cualquier turno, cuando se acaban las fichas.
  • Al final se extraen solo las fichas restantes en el recipiente, pues el total de fichas restantes solo puede llegar a 0.
  • Para encontrar al ganador, debe describir el algoritmo, NO use funciones de matlab.

Rúbrica: Ingreso y validación (5 puntos), control de turnos (5 puntos). Control de fichas (10 puntos). Busca ganador (5 puntos), resultados (5 puntos).

1Eva_IT2013_T4 Tabular atención al cliente

1ra Evaluación I Término 2013-2014, Julio 2, 2013 /ICM00794

Tema 4. (30 puntos) En un «Centro de Servicio»,  el cliente luego de ser atendido evalúa la atención recibida presionando un botón entre las 5 opciones mostradas.

Opciones:
 5. Excelente
 4. Muy Buena
 3. Buena
 2. Regular
 1. No satisfactoria

Realice un algoritmo que registre en un arreglo la evaluación para n clientes atendidos, luego deberá tabular las respuestas para mostrar:

a) Total de respuestas por tipo
b) La respuesta más frecuente
c) ¿Cuáles clientes respondieron con valores menores al promedio?

Ejemplo: n=50
Cliente  1  2 3  4 5  … n
Atención  5  2 4  5  3  …  4
Respuestas
a) Excelente: 10
 Muy Buena: 20
 Buena: 15
 Regular: 3
 No satisfactoria: 2
b) Más frecuente: 4
c) Promedio: 3.66
menor al prom.:
2,5,…etc

Rúbrica: Ingreso y validación (5 puntos),  literal a (10 puntos) literal b (10 puntos). Algoritmo estructurado (5 puntos)