3Eva_IIT2014_T2 última sílaba

3ra Evaluación II Término 2014-2015, Marzo 10, 2015 /ICM00794

Tema 2 (20 puntos) Realice una función ultimasilaba(palabra) que al recibir una palabra retorne los dos o tres últimos caracteres.
Si la última letra es una vocal, la respuesta serán las dos últimas letras, si es consonante la respuesta contiene las tres últimas letras.

>>> ultimasilaba('casa')
'sa'
>>> ultimasilaba('color')
'lor'
>>> ultimasilaba('examen')
'men'

Referencia: http://www.wikilengua.org/index.php/S%C3%ADlaba

Rúbrica: definir función (5 puntos), determinar vocal o consonante (8 puntos), repuesta condicionada (7 puntos).

3Eva_IIT2014_T1 Ubicar estudiantes en aula

3ra Evaluación II Término 2014-2015, Marzo 10, 2015 /ICM00794

Tema 1. (25 puntos). Se dispone de una lista con los números de matrícula para k estudiantes que darán un examen. El salón donde se desarrollará el examen tiene sillas distribuidas de forma ordenada en n filas y m columnas. aula de clases dando examen

Realice un programa que permita ingresar en un vector los números de matrícula, luego usando una matriz, asigne las sillas de forma aleatoria para cada estudiante.

El resultado se debe mostrar de dos formas:

a) una matriz que contiene en las casillas los números de matrícula.
b) un listado con números de matrícula, y la posición de fila y columna de la silla asignada al estudiante.

Considere que:

  • k siempre es menor que la capacidad de sillas en el aula (nxm),
  • Una silla sin estudiante asignado, contiene valor 0.
  • Las ubicaciones de los estudiantes son únicas.
>>> cantidad de estudiantes: 50
filas en el aula: 5
columnas en el aula: 4
**Hay más estudiantes que las sillas en el aula
cantidad de estudiantes: 5
filas en el aula: 5
columnas en el aula: 4
matricula[1]:123
matricula[2]:234
matricula[3]:345
matricula[4]:456
matricula[5]:567

Distribución del aula
[[ 0  567 0   0  ]
 [ 0  0   0   345]
 [ 0  0   123 0  ]
 [ 0  0   0   0  ]
 [ 0  0   234 456]]
Listado de sillas
matricula, fila, columna
123 3 3
234 5 3
345 2 4
456 5 4
567 1 2

Rúbrica: Ingresar y validar (5 puntos), literal a (10 puntos), literal b (5 puntos). Algoritmo estructurado. (5 puntos)

3Eva_IT2014_T4 Función siembra

3ra Evaluación I Término 2014-2015, Septiembre 16, 2014 /ICM00794

Tema 4. (25 puntos) Realice una función siembra(tablero, fila, columna) que en un tablero de 2×8, siguiendo el sentido de las manecillas del reloj, distribuye la cantidad de fichas en la casilla indicada por fila y columna, equitativamente una a una entre las casillas contiguas.

Observe que dependiendo de la fila, la siguiente casilla es o a la izquierda o a la derecha de donde estaba.

Al redistribuir el valor:

  • Se empieza a partir de la siguiente casilla seleccionada.
  • Si la siguiente casilla está fuera del tablero, se cambia de fila, invierte el sentido entre izquierda o derecha, y se corrige regresando al tablero en el mismo extremo.
  • Se incrementa el valor de la casilla

Repitiendo el proceso hasta que no queden fichas.

>>tablero
0 4 4 4 4 4 4 0
0 4 4 4 4 4 4 0
>>siembra(tablero,1,5)
0 4 4 4 0 5 5 1
0 4 4 4 4 4 4 1
>>siembra(tablero,2,2)
1 5 5 4 4 4 4 0
1 0 4 4 4 4 4 0

Rúbrica: definir función (5 puntos), asignar sentido (5 puntos), añadir valor a casillas (5 puntos), control del valores, tamaños, validar extremos (10 puntos)

3Eva_IT2014_T3 Juego Poli-Mancala

3ra Evaluación I Término 2014-2015, Septiembre 16, 2014 /ICM00794

Tema 3. (25 puntos). Poli-mancala es un juego de tablero con 2×8 casillas, 48 fichas y un movimiento denominado “siembra”.

  • Al inicio, se ubican 4 fichas en cada casilla excepto en los extremos izquierdo y derecho del tablero.
  • Se juega por turnos alternados para realizar un movimiento de siembra.
  • Suponga que existe la función siembra(tablero, fila, columna) que devuelve el tablero modificado.
  • La siembra consiste en tomar todas las fichas de una casilla de la fila del jugador, y depositar una a una en las casillas contiguas siguiendo el sentido de las manecillas del reloj.
  • Las casillas de cada jugador se encuentran diferenciadas por color en el tablero mostrado.
  • Cada jugador puede realizar jugadas solo sobre sus casillas excepto la de su extremo (entre columnas 2 y 7).
  • El jugador que acumule más de la mitad de fichas en las casillas de su extremo (Casa) gana el juego.

Realice un programa para dos jugadores del juego descrito de Poli-mancala.

Tablero inicial:
Jugador1 [0 4 4 4 4 4 4 0] Jugador2
   0     [0 4 4 4 4 4 4 0]    0

Jugador 1. ¿Casilla siembra?: 5
Jugador1 [0 4 4 4 0 5 5 1] Jugador2
   0     [0 4 4 4 4 4 4 1]    2

Jugador 2. ¿Casilla siembra?: 2
Jugador1 [1 5 5 4 0 5 5 1] Jugador2
   2     [1 0 4 4 4 4 4 1]    2

Referencia: http://www.ludoteka.com/wari.html
Rúbrica: Inicializar juego (5 puntos), control jugadas (5 puntos), control de puntajes (10 puntos), distribuir fichas (5 puntos)

3Eva_IT2014_T2 Gestionar Cocinas Inducción

3ra Evaluación I Término 2014-2015, Septiembre 16, 2014 /ICM00794

Tema 2. (30 puntos)cocina04 Para implementar cocinas de inducción se requiere realizar un registro de los datos de los interesados, usando el menú mostrado.

Menú
1. Registro de datos del usuario
2. Verificar medidor eléctrico
3. Verificar instalación
4. Asignar incentivo tarifario
5. Reporte
6. Salir

El registro de datos de usuario requiere de los siguientes datos:

código medidor cédula nombre Tipo cocina Verifica medidor Verifica Instalación Asigna incentivo
54321 091234 Maria 2 0 0 0
  • Los tipos de cocina son de 2, 4 y 5 “focos” (hornillas), las verificaciones y asignación se realizan en los siguientes pasos, por lo que inician en 0.
  • Para cada interesado, la empresa eléctrica verifica que el medidor en la residencia sea de 220V.
  • Después de la compra de la cocina, se tiene que verificar la instalación eléctrica usada es apropiada (1, sino use -1).
  • Para asignar el incentivo tarifario a todos los interesados, deben haber cumplido satisfactoriamente los pasos de verificación.
  • El reporte del programa debe mostrar el número de registrados, medidores verificados, instalaciones correctas y cuántos ha cumplido con los requisitos para obtener el incentivo tarifario.

Realice un programa para gestionar los datos de este proceso.

Referencia: http://www.ecuadorcambia.com/ http://www.eluniverso.com/noticias/2014/08/28/nota/3574916/mas-11-mil-inscritos-plan-cocinas
Rúbrica: Menú (5 puntos), estructura de datos y uso (5 puntos), control de variables (10 puntos), verificación (5 puntos), reporte (5 puntos).

3Eva_IT2014_T1 Potencia recursiva

3ra Evaluación I Término 2014-2015, Septiembre 16, 2014 /ICM00794

Tema 1 (20 puntos).La operación matemática de la exponenciación entera mostrada, permite la implementación de un algoritmo exponenciación rápida, al realizar menos multiplicaciones si se calcula sólo una vez el término a (b/2).

a^b = \begin{cases} a^{(b/2)}*a^{(b/2)}, & b>0 \text{ y b es par}\\ a*a^{(b-1)}, & b>0 \text{ y b es impar} \\ 1, & b=0 \end{cases}

Escriba una función recursiva potencia(a,b), considerando la exponenciación rápida y realice una prueba de escritorio para 34.

Rúbrica: Definir función (5 puntos), desarrollo función (10 puntos), prueba de escritorio (5 puntos)

3Eva_IIT2012_T4 Registro de alquiler de canchas

3ra Evaluación II Término 2012-2013, Febrero 20, 2013 /ICM00794

Tema 4 (30 puntos). Para administrar el alquiler y reserva de una cancha deportiva privada, se requiere escribir programa que permita registrar las horas reservadas dentro de una semana, que cumpla con el menú siguiente:

  1. Registro de Cliente: solicita el nombre, cedula y teléfono del cliente y le asigna un número de cliente, llenando una tabla de clientes.
  2. Reserva de horario: El cliente seleccionará el horario para uso de la cancha proporcionando la hora, día y su número de cliente, con lo que registra la reserva en una matriz de Horarios. No se puede reservar un horario que ya esté ocupado.
  3. Mostrar bloque horario. Muestra el estado de alquiler y reserva de horarios. Los libres se muestran con cero.
  4. Mostrar Clientes: Lista los datos de los clientes que han reservado horas en la cancha.
  5. Mejor cliente: muestra cuál es el cliente que ha realizado más reservas durante la semana.
  6. Salir

Ejemplo:

Tabla de Clientes
i Nombre Cedula Teléfono
1 Juan 0987654321 2233441
2 Pedro 0976548123 2456578
3 María 1245689730 2694567
Ejemplo de Reserva:
Hora:10 (am),
dia:4 (Jueves),
Cliente número: 2 (Pedro)
Mejor cliente: 3
Tabla de Reserva Horaria. día
Lun Mar Mié Jue Vie Sab Dom
Horarios 1 2 3 4 5 6 7
Horas 7 3 3 3 3 0 0 0
8 0 0 0 0 0 1 0
9 4 0 4 0 4 1 0
10 0 0 0 2 0 0 4
11 0 0 0 0 0 0 0
12 0 0 0 0 0 0 0
21 0 1 0 1 0 3 0
22 0 0 0 0 0 0 0

Nota: Los horarios se pueden reservar de lunes a domingo desde las 7h00 a las 22h00. Puede usar las funciones para matrices del tema anterior

Rúbrica: Estructura menú (5 puntos), estructura de datos y su registro (10 puntos), reserva y validación (5 puntos), uso de funciones de matrices (5 puntos), mejor cliente (5 puntos).

3Eva_IT2012_T4 Registrar y despachar pedidos

3ra Evaluación I Término 2012-2013, Septiembre 11, 2012 /ICM00794

Tema 4 (25 puntos) Una tienda administra pedidos vía electrónica usando el menú mostrado.

Menú
 1. Ingresar Inventario
 2. Ingresar Pedido
 3. Inventario Final
 4. Salir

Pedido es otra lista de los m tickets (números enteros) junto con el código del artículo que el cliente desea (un solo artículo por cliente) y la cantidad requerida.

  • Inventario final determina la cantidad total sobrante o faltante de cada artículo para atender las solicitudes de todos los clientes y muestra el resultado.
    Realice un programa que administre con un menú los datos de ambas listas.
Inventario
Codigo Artículo Cantidad
1 Lápiz 100
2 Borrador 70
n
Pedido
Ticket Cliente Código Cantidad
1 María 2 4
2 Pedro 1 5
3 Juan 1 10
m

Rúbrica: Definición y uso de estructura de datos (5 puntos), Menú (5 puntos), Ingreso de registros en tablas (5 puntos), calcular y mostrar el inventario final (10 puntos)

3Eva_IT2012_T3 Tonalidad de colores en GIF

3ra Evaluación I Término 2012-2013, Septiembre 11, 2012 /ICM00794

Tema 3 (25 puntos). El formato GIF para imágenes digitales, usa la técnica de color indexado con 256 tonalidades de color por pixel [0-255] en una matriz de pixeles de tamaño nxm.

Se requiere separar los distintos colores, para identificar y determinar las cantidades de cada tonalidad de color mediante el uso de un vector de frecuencias [0-255].

Realice una función colorimg(imagen) que reciba la matriz de una imagen de tamaño nxm y presente como resultado el vector de frecuencias de los colores indexados.

imagen.gif
30 30 30 0 0
30 30 30 0 0
170 170 30 30 0
80 80 170 30 30
80 80 80 170 170
>>frecuencia=colorimg(imagen)
    color = [0, 1, 2, ..., 30, ..., 80, ..., 170, ...]
frecuencia =[5, 0, 0, ..., 10, ...,  5, ...,   5, ...]
usar para ejemplo en python:
matriz = np.array([[30, 30, 30, 0, 0],
                   [30, 30, 30, 0, 0],
                   [170, 170, 30, 30, 0],
                   [80, 80, 170, 30, 30],
                   [80, 80, 80, 170, 170]])

Nota: El rango de color es [0-255] y el indice de frecuencias es [1-256] en matlab
Referencia: http://www.ecured.cu/index.php/Color_indexado

Rúbrica: Definición de Función (5 puntos), manejo de tamaño de matriz (5 puntos), vector de frecuencias (15 puntos).

3Eva_IIT2012_T2 Practicar alfabeto radiofónico con Python

3ra Evaluación II Término 2012-2013, Febrero 20, 2013 /ICM00794

Tema 2 (30 puntos). Realice un programa para practicar el uso del alfabeto radiofónico usando un menú como el siguiente:

https://www.icao.int/about-icao/Pages/ES/default_ES.aspx
https://www.icao.int
  1. Mostrar alfabeto radiofónico.- muestra la tabla del alfabeto radiofónico.
  2. Prueba de escritura.- Presenta una cadena con 6 letras del alfabeto generadas de forma aleatoria, pregunta al usuario la conversión a alfabeto radiofónico, luego verifica y muestra si fue correctamente escrita. Si hay errores se permiten hasta 3 intentos para completarla.
  3. Prueba de lectura. Presenta una cadena con 6 palabras del alfabeto radiofónico seleccionadas de forma aleatoria, luego pregunta al usuario las letras correspondientes, verificando y mostrando si se superó la prueba. En caso de errores, solo admiten hasta 3 intentos para superar la prueba.
  4. Salir
>> radiofono
 ** Entrenamiento Alfabeto Radiofónico **
 1. Mostrar alfabeto radiofónico
 2. Prueba de escritura
 3. Prueba de lectura
 4. Salir
 ¿cuál opción?:2
 ** Prueba de escritura
 GUAYAS
 Escriba código:
 GOLF UNIFORM ALFA YANKEE ALFA SIERRA
 Correcto…!
 ¿cuál opción?:3
 ** Prueba de Lectura
 GOLF UNIFORM ALFA YANKEE ALFA SIERRA
 Escriba código: GUAYAS
 Correcto....!

Nota: Puede usar las funciones del tema anterior. Para comparar cadenas: strcmp(a ,b).

Rúbrica: menú (5 puntos), ítem 1 (5 puntos), ítem 2 (5 puntos), ítem 3 (10 puntos), Programa estructurado (5 puntos)


Referencia: Parte 1: 3Eva_IIT2012_T1 Alfabeto radiofónico con Python

Wikipedia: Alfabeto radiofónico