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

3Eva_IIT2014_T4 Reporte de aprobados / veces

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

Tema 4. (40 puntos) Una vez finalizado el período académico, se requiere administrar los datos de los estudiantes y sus calificaciones en una materia para generar los reportes de desempeño.

Escriba un programa que realice las operaciones numeradas usando el menú descrito a continuación

  1. Registrar datos de estudiante. Registra el número de matrícula, el nombre, y el número de veces que se registra en la materia [1 a 3] de un solo paralelo. La nota inicial del estudiante es cero.
  2. Registrar calificaciones de estudiantes. Permite ingresar los valores de las calificaciones finales para todos los estudiantes con valores enteros entre 0 y 100
  3. Rectificar una calificación. Dado un número de matrícula, mostrar el nombre del estudiante y solicitar la nueva calificación.
  4. Reporte de resultados. Cuenta y muestra el reporte de estudiantes aprobados (calificación ≥ 60) y reprobados, clasificados por el número de veces que se ha registrado en la materia.
  5. Promedios. Promedio total de calificaciones de la materia, y los promedios por el número de veces que se ha registrado.
  6. Salir
estudiante:
matricula nombre veces calificación
1234 Juan 1 87
4312 Maria 2 85
4567 Pedro 1 47
Resultados:
Veces 1 Veces 2 Veces 3 Total
Reprobado
Aprobado
Total

Rúbrica: Menú (5 puntos), manejo de registros (5 puntos), validar calificaciones (5 puntos), rectificar (10 puntos), conteo de resultados (5 puntos), promedios (5 puntos), algoritmo estructurado (5 puntos)

3Eva_IIT2014_T3 Juego de palabras encadenadas

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

Tema 3 (15 puntos). El Juego de Palabras encadenadas entre dos jugadores consiste en tomar turnos para escribir una palabra que comience con la última sílaba exacta.

>>> Jugador 1
palabra: casa
Jugador 2 :
palabra: saco
Jugador 1
palabra: color
Jugador 2 :
palabra: oro
El ganador de este juego es 1

Nota: Puede hacer uso de la función del tema anterior

Rúbrica: Control de turnos (5 puntos), uso de función (5 puntos), confirmar encadenada (5 puntos)

Referencia: http://es.wikipedia.org/wiki/Palabras_encadenadas

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)