Categoría: Evaluaciones

Ejercicios de examen

  • 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)

  • 2Eva_IIT2014~T1 Función potencia recursiva

    2da Evaluación II Término 2014-2015, Febrero 2015 /FIEC

    Tema 1. (25 puntos) Escriba la función recursiva calcularPotenciacion(base,exponente) la cual recibe dos números enteros no negativos como parámetros para calcular y retornar la potenciación de los mismos asumiendo que el primer número es la base y el segundo el exponente.

    baseexponente = 24=2.23=2.2.22=2.2.2.2

    Nota: No utilizar la función estándar pow (base, exp).

    Referencia: 2Eva_IT2005_T2 Calcular potencia recursiva

  • 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 8x9=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).

  • 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)