Categoría: 2da Evaluación

  • 2Eva_IIT2014~T4 Prueba de escritorio, lazos y contadores

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

    Tema 4. (15 puntos) Analice el código fuente de los programas que se muestran a continuación. Seleccione la respuesta correcta y justifique brevemente su respuesta.

    #include<stdio.h>
    int main()
    {
        int i;
        for(i=0,i<5,i++)
        {
           int i=10;
           printf("%d",i);
           i++
        }
        return 0;
    }

    La salida del programa sería:

    A. 10 11 12 13 14
    B. 10 10 10 10 10
    C. 0 1 2 3 4
    D. Error de compilación
    #include<stdio.h>
    int main()
    {
        int x; a=2;
        x=++a,++a,a++;
        printf("%d  %d",x,a);
        return 0;
    }

    La salida del programa sería:

    A. 5 5
    B. 3 5
    C. 4 5
    D. 5 4

     

  • 2Eva_IIT2014~T3 Función contar palabras

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

    Tema 3. (35 puntos) La utilidad de contar palabras y convertir caracteres a mayúsculas es parte de los procesadores de texto. Como programador a usted se le solicita implementar las dos funciones descritas en los literales siguientes

    a) Una función que permita contar palabras de un archivo de texto.  contarPalabras(nombre_archivo) recibe la cadena nombre_archivo con la dirección absoluta del archivo de texto al cual se debe contar las palabras.

    La función debe retornar el número de palabras que contiene el archivo de texto, 0 en caso de estar vacío o que el archivo no exista y -1 si ocurre un error de Entrada/Salida.

    Nota: Asuma que cada palabra está separada por un espacio y por saltos de línea

    b) Una función que cree un nuevo archivo con su contenido en mayúsculasconvertirMayusculas (nombre_archivo) que recibe la cadena nombre_archivo con la dirección absoluta del archivo de texto a convertir a mayúsculas. La función debe retornar 1 si puede escribir el nuevo archivo, 0 si no es posible escribirlo.

    El nuevo archivo debe ser ubicado en la carpeta temporal c:\temp y nombre “mayusculas_tmp.txt”.

    Nota: Considere cambiar únicamente las letras del alfabeto de la A-Z.

    Rúbrica: literal a (15 puntos), literal b (20 puntos)

    Referencia: 3Eva_IIT2008_T1 Contar palabras para un clasificado

  • 2Eva_IIT2014~T2 Punto de silla de una matriz

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

    Tema 2. (25 puntos) Se dice que una matriz de números enteros tiene un punto de silla si algún elemento de la matriz es el menor de los elementos de su fila y a la vez el mayor de los elementos de su columna.

    A B C
    1 1 2 3
    2 3 3 5
    3 5 1 2

    Ejemplo: El elemento ubicado en la coordenada 2B es un punto de silla

    A usted se le solicita implementar la función esPuntoSilla(matriz,fila,columna), que recibe una matriz de enteros y la coordenada de un elemento.

    Retorna 1 si el elemento es un punto de silla, caso contrario retorna 0.

  • 2Eva_IIT2013_T4 Algoritmo para agendar citas medicas

    2da Evaluación II Término 2013-2014, Febrero 11, 2014 /ICM00794

    Tema 4. (30 puntos)El Instituto Ecuatoriano de Seguridad Social (IESS) dispondrá de un nuevo sistema para agendar citas, con lo que espera mejorar los servicios y reducir los tiempos de espera para atención médica.

    Realice un programa para gestionar en un hospital, las solicitudes de atención médica, registrando los datos de paciente y usando una matriz de control de turnos para solo un mes cualquiera conforme al menú mostrado.

    Menú:
     1. Registro de datos de paciente
     2. Consulta tabla de turnos
     3. Asignación de cita
     4. Cantidad de turnos a máxima capacidad en el mes
     5. Salir

    Para el registro de paciente se escriben los datos de cédula y nombre.
    La consulta de tabla de turnos muestra la cantidad reservada por día y por hora en una matriz.

    Para asignar una cita se solicita el número de turno, el día y la hora deseado, pero solo si no se ha alcanzado la capacidad por hora, se registra en la tabla de paciente y se cuenta en la tabla de turnos.

    paciente:
    turno cédula nombre día hora
    1 123 María 1 1
    2 456 Juan 1 1
    3 789 Pedro 2 1
    ... ... ... ... ...

    Capacidad por hora=5

    Reserva de Turnos
    día\hora 1 2 3 4 5 6 7 8
    1 4 5 5 5 3 2 5 5
    2 3 4 5 0 2 0 0 0
    3 0 0 0 0 0 0 0 0
    ... ... ... ... ... ... ... ... ...
    28 0 0 0 0 0 0 0 0
    29 0 0 0 0 0 0 0 0
    30 0 0 0 0 0 0 0 0
    31 0 0 0 0 0 0 0 0

    Referencia: “El IESS tendrá call center propio”. 06/febrero/2014. www.expreso.ec
    “Personal del IESS atenderá llamadas para citas médicas desde marzo”, 07/febrero/2014. www.eluniverso.com

    Rúbrica: menú (5 puntos), manejo de estructura (5 puntos), control de turnos (10 puntos), turnos a capacidad máxima (10 puntos).

  • 2Eva_IIT2013_T3 Encriptar binarios con XOR

    2da Evaluación II Término 2013-2014, Febrero 11, 2014 /ICM00794

    Tema 3. (20 puntos) La operación xor en el sistema binario produce el resultado mostrado en la tabla.

    m k m xor k
    0 0 0
    0 1 1
    1 0 1
    1 1 0

    Esta operación se usa para encriptar mensajes en binario en los cuales m representa el mensaje, k la clave para encriptar el mensaje, y e el mensaje encriptado.

    Escriba una función que reciba dos vectores conteniendo números en el sistema binario y entregue otro vector conteniendo los números binarios que se obtienen con la operación xor.
    Esta función se usará para encriptar un mensaje y para conocer el mensaje enviado.

    .envíado:
    Clave:
    encriptado:
    Ejemplo de mensaje:
    m = 11011001
    k = 01100011
    e = 10111010
    .encriptado:
    Clave:
    recibido:
    Ejemplo:
    e = 10111010
    k = 01100011
    m = 11011001

    La función debe validar que los vectores contengan números binarios, caso contrario, el resultado es un vector nulo.
    El receptor del mensaje encriptado, aplicando la misma clave puede conocer el mensaje.

    Rúbrica: definir función (5 puntos), validar tamaños y valores (5 puntos), comparar y asignar (10 puntos)

  • 2Eva_IIT2013_T2 Verificar secuencia ADN

    2da Evaluación II Término 2013-2014, Febrero 11, 2014 /ICM00794

    Tema 2. (25 puntos) Una cadena ADN se representa como una línea de texto con los caracteres A, C, G, T en cualquier secuencia.

    Se considera que cada par de caracteres consecutivos está ordenado si el carácter a la izquierda es alfabéticamente menor o igual que el carácter a la derecha.

    Escriba una función para determinar cuántos pares de una cadena ADN están ordenados.
    La función debe verificar que la cadena tenga caracteres válidos, caso contrario, el resultado es un número negativo.

    Ejemplo: 
    >>cadena= CCGAATCGTA 
    >>ordenados(cadena) 
    ans=6 
    >>cadena= CBGAATCGWA 
    >>ordenados(cadena) 
    ans=-2

    Rúbrica: definir función (5 puntos), validar caracteres (5 puntos), contar pares ordenados (10 puntos)

    Referencia: https://es.wikipedia.org/wiki/Gattaca

  • 2Eva_IIT2013_T1 Cable submarino para internet

    2da Evaluación II Término 2013-2014, Febrero 11, 2014 /ICM00794

    Tema 1 (25 puntos) Para disponer del servicio de internet con banda ancha en una isla turística, se proyecta instalar un cable submarino de fibra óptica desde la costa continental. Se dispone de una tabla con los datos (x, y, z) para el anclaje del cable en el lecho marino correspondientes a las coordenadas tipo rectangulares en kilómetros y la profundidad en cada punto en metros.

    a) Realice una función, que dada las coordenadas y la profundidad entre dos puntos, calcule el costo equivalente del tendido del cable entre los puntos. Suponga que costo de instalación de un cable submarino de fibra óptica se determina por:

    • La extensión del cable por kilómetro es $ 100, suponiendo que es en línea recta entre anclajes
    • La profundidad del punto más bajo entre los dos anclajes conforme a la tabla siguiente:

    Costo por km de cable = $100

    Profundidad (m) Costo anclaje($)
    <10 $ 500
    Entre 10 y 30 $ 1000
    mayor de 30 $ 3000

    b) Realice un programa para ingresar la tabla de datos de anclaje y usando la función anterior, calcule el costo total del tendido del cable entre el continente y la isla (puntos consecutivos). También encuentre y muestre cuál es el tramo que representa el mayor costo.

    Nota: Suponga que las unidades de las coordenadas se encuentran en km y la profundidad en metros.

    Distancia entre dos puntos en el espacio:

    d = \sqrt{(x_2-x_1)^2+(y_2-y_1)^2+(z_2-z_1)^2}

    Rúbrica: Definir función (5 puntos), cálculo con unidades (5 puntos), usar función en programa (5 puntos), Costo total (5 puntos). Tramo caro (5 puntos)