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)

1Eva_IIT2014_T1 Verificar si a y b son Números amigos

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

Tema 1. (20 puntos) Dos números enteros positivos a y b son amigos sí solo sí la suma de los divisores de a es igual al número b, y la suma de los divisores de b es igual al número a.

Ejemplo:
números: a = 220 b = 284
divisores de número: 1, 2, 4, 5, 10, 11, 20,
22, 44, 55 y 110,
1, 2, 4, 71 y 142,
suma de divisores 284 220

Escriba un algoritmo para determinar si dos números enteros a y b son amigos o no.

Rúbrica: ingresar y validar positivos (5 puntos), buscar divisores (10 puntos), acumular divisores (3 puntos) determinar si son amigos (2 puntos).

1Eva_IT2014_T4 Jugadores para escuela de Fútbol

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

Tema 4. (30 puntos) En una escuela de fútbol se inscriben n jugadores identificados con su número en la lista de asistencia y un código que identifica su mejor habilidad en la cancha. Al ingresar la habilidad por jugador, se validan los códigos.

Para entrenamiento se forman dos equipos de 11 jugadores seleccionados de forma aleatoria, cada equipo debe contener:

un portero, cuatro defensas, dos para medio campo y cuatro delanteros.

Escriba un algoritmo para ayudar a este entrenador a elegir aleatoriamente a los jugadores de ambos equipos y muestre los jugadores de cada equipo.
Observe que un jugador no puede pertenecer a más de un equipo.

Suponga que se registran siempre más jugadores por especialidad que lo necesario. Ejemplo n>40

Código Habilidad
1 Portero
2 Defensa
3 Mediocampo
4 delantero
j habilidad(j) equipo(j)
1 2 0
2 2 0
3 3 2
4 1 1
5 4 0
6 4 1

Rúbrica: Ingreso y validación (5 puntos), selección aleatoria (5 puntos), no repetida (10 puntos), por grupos (5 puntos), salida (5 puntos)

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_T1 Cuadrado de Cinco

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

Tema 1. (20 puntos) Se dice que el cuadrado de cualquier número terminado en 5 se forma como el producto de las decenas y (decenas+1), añadiendo a la derecha del resultado el 25. Si el número es menor que 100 se calcula fácilmente con la tabla de multiplicar como se muestra en los ejemplos:

Operación decena decena+1 añadir resultado
252 2 3 6 625
852 8 9 72 7225

252, la decena que es 2, se multiplica por 3 que es la decena+1, resulta 6 que se añade a la derecha 25 y su resultado es 625.


852, se calcularía como 8×9=72, se añade a la derecha 25, el resultado es 7225.


Elabore un algoritmo que valide el proceso para los números terminados en cinco dentro del rango entre 5 y m (ejemplo 1000). Al final muestre si se cumple lo descrito, en caso de ser incorrecto, mostrar el primer número para el que no se cumple.

Rúbrica: Operaciones con los dígitos (10 puntos), Validación rango (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

1Eva_IT2014_T2 Verificar EAN con Python

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 :

  • 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_IIT2014_T4 Turnos en imprenta de gigantografía

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

Tema 4. (30 puntos). Una empresa de gigantografías registra los pedidos de trabajo por cliente como la cantidad de letreros a imprimir y los atiende por orden de llegada. 

Cada operador de la imprenta trabaja en turnos de 4 horas (240 minutos), y le toma 25 minutos imprimir un letrero en la máquina.

Al terminar el turno de trabajo (4 horas), el operador debe informar al siguiente:

a) el número de clientes con pedidos completados,

b) el cliente cuyo pedido se está trabajando.

c) La cantidad de letreros completados del pedido que se está atendiendo.

Realice un algoritmo que permita ingresar en un arreglo la cantidad de pedidos por cliente (pedido [cliente]) y pueda estimar las respuestas del informe para el cambio de turno.

Ejemplo:

cliente 1 2 3 4 5 6 7
pedido [cliente] 3 2 1 2 2 4 1
tiempo [cliente] 75 50 25 50 50 100 25
total tiempo [cliente] 75 125 150 200 250 350 375
turno de operador 1 1 1 1 2 2 2
Al cambio de turno:
 pedidos completados: 4
 Atendiendo a cliente: 5
 Letreros completados del pedido: 1

En el ejemplo, se encuentra que:

  • los pedidos completados por el operador  1 fueron solo 4, pues el 5 todavía se está trabajando,
  • los letreros completados del pedido del cliente 5 son 1. (calculado como el cociente (240-200)/25)).

Rúbrica: Ingreso (5 puntos), conversión a tiempos (5 puntos), literal a) (5 puntos), literal b) (5 puntos), literal c) (10 puntos)

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. parasailing dibujo

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)


1Eva_IIT2014_T2 Triángulos aleatorios en rectángulo

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

Tema 2. (25 puntos) Una imagen para protector de pantalla en computadora se puede generar dibujando triángulos de tamaño y posición aleatorias.

triangulos01

Para formar un triángulo se generan tres pares ordenados dentro de un rectángulo de lados a y b.

Elabore un algoritmo que genere aleatoriamente los vértices para n triángulos y determine la cantidad de figuras generadas clasificadas como:

  • triángulos equiláteros, todos sus lados de iguales
  • triángulos escalenos, todos sus lados diferentes
  • triángulos isósceles, dos lados iguales y uno desigual
  • puntos colineales, la suma de dos lados es igual al tercer lado y NO forma un triángulo.
Ejemplo:
>>> ¿cuántos triángulos?: 5
 ¿lado a?: 10
 ¿lado b?: 10
 equiláteros: 0
 escaleno: 3
 isósceles: 1
 colineales: 1

Rúbrica: Ingreso y validación (5 puntos), triángulos aleatorios en el plano (5 puntos), contar por tipo (10 puntos), contar colineales (5 puntos)