Etiqueta: arreglos-matrices

array numpy

  • 3Eva_IIT2012_T3 Funciones mayor y contar

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

    Tema 3 (20 puntos).
    a) Realice una función rangomayor(matriz), que recibe una matriz de números enteros y devuelve el número de mayor valor.

    b) Escriba una función cuenta(matriz,k) que reciba una matriz de números enteros y cuente las veces que aparece el número k dentro de la matriz.

    c) Realice una función contartodos(matriz), que recibe una matriz de números enteros y entrega un vector con las veces que se presentan cada número en la matriz. Ejemplo:

    matriz
    0 3 4
    2 2 3
    0 2 1
    >> rangomayor(matriz) ans=4
    >> cuenta(matriz,2) ans=3
    >> contartodos(matriz)
    Número 1 2 3 4
    Veces: 1 3 2 1

    Nota: Para este tema se requiere presentar las funciones y sus soluciones algorítmicas (no use las existentes en matlab), puede hacer uso de las funciones entre literales de este tema.

    Rúbrica: definición de funciones (3 puntos), literal a (5puntos), literal b (5 puntos), literal c (7 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_IIT2011~T2 Función para problema de las 8 torres

    3ra Evaluación II Término 2011-2012, Febrero 2012 /FIEC

    Tema 2. (20 puntos) El Problema de Torres es un pasatiempo en el que se colocan ocho torres en un tablero de ajedrez sin que estas se amenacen.

    La torre amenaza a aquellas piezas que se encuentren en su misma fila o columna.

    En la matriz las torres están representadas por el 1 y los espacios vacios por el 0.

    1
    1
    1
    1
    1
    1
    1
    1

    A Ud. Se le ha solicitado implementar:

    La función int tableroValido(int Tablero[8][8]) la cual indica si el tablero es válido o no verificando que no existe ninguna torre que este amenazando a otra. Para el caso de ser válido retorna 1 sino 0.

  • 3Eva_IIT2011_T2 Registrar gastos en viaje por automóvil

    3ra Evaluación II Término 2011-2012, Febrero 14, 2012 /ICM00794

    Tema 2. (30 puntos) Juan y Pedro deciden separadamente recorrer en auto varias ciudades quedándose un día en cada una, arbol decision ejemplo

    al siguiente día cada uno decide ir por la izquierda o derecha lanzando una moneda, hasta encontrar un punto en que ya no se pueda continuar (marcado por 0 en la tabla).

    Los posibles recorridos por carretera se representan en la tabla, indicando:

    • el valor de gastos por estadía en una ciudad,
    • el número de la siguiente ciudad que se visitaría si se sigue en la dirección izquierda o derecha.
    Ciudad Gastos Izquierda Derecha
    1 200 3 2
    2 150 4 5
    3 70 7 4
    4 140 7 6
    5 90 6 0
    6 300 7 0
    7 50 0 0

    Realice un programa que permita simular el viaje de Juan y el de Pedro, ingresando la tabla y al final muestre:

    a) el recorrido realizado por Juan y Pedro en arreglos,
    b) el total de gastos por estadía por cada el recorrido,
    c) quién visitó mas ciudades y,
    d) quién gastó menos en su recorrido.

    Rúbrica: Ingreso de datos (5 puntos), arreglos de Recorridos (15 puntos), literal b) (5 puntos), literal c) y d) (5 puntos).

  • 3Eva_IT2011_T3 Calcular comisiones por servicio técnico

    3ra Evaluación I Término 2011-2012, Septiembre 13, 2011 /ICM00794

    Tema 3 (30 puntos). Una empresa brinda cuatro tipos de servicio técnico con costos de 25, 50, 100 y 150 dólares respectivamente. La empresa dispone de n técnicos, que perciben una comisión del 5% sobre la tarifa del servicio realizado.
    Al final del mes se obtiene la tabla de servicios prestados por técnico.

    Tabla de Servicios:
    Servicio 1 2 3 4
    Precio $25 $50 $100 $150

    Realice un menú que permita:

    1. Ingresar lista. Registra los Servicios prestados por técnico en el mes.
    2. Total Facturado. Calcula y muestra el total de dinero facturado por la empresa.
    3. Comisiones. Calcula y muestra las comisiones obtenidas por técnico.
    4. Servicio Estrella. Muestra el servicio el más requerido.
    5. Técnico del Mes. Busca y muestra el técnico que ganó la mayor comisión
    6. Salir.

    Nota: Para el tema 2, puede utilizar la función del tema anterior para calcular la matriz de facturación.

    Ejemplo:
    Servicios Prestados Serv 01 Serv 02 Serv 03 Serv 04 . Comisión
    Técnico 1 2 1 2 3 37.50
    Técnico 2 3 1 0 2 21.25
    Técnico 3 2 2 1 1 20.00
    Técnico 4 1 0 0 3 23.75
    ... ... ... ... ...
    Técnico n 3 5 1 1 28.75
    • Total Recaudación: $2.625
    • Servicio Estrella: Servicio 1
    • Técnico del Mes: 1
    • Técnico menos productivo: 3

    Rúbrica: Menú (5 puntos), cálculo de recaudación (10 puntos), desarrollar los ítems del 3 al 5 del menú (5 puntos).

  • 3Eva_IT2011_T2 producto de matrices

    3ra Evaluación I Término 2011-2012, Septiembre 13, 2011 /ICM00794

    Tema 2 (15 puntos). Dos matrices A y B se pueden multiplicar si el número de columnas de A coincide con el número de filas de B.

    Am x n x Bn x p = Cm x p

    El elemento Cij de la matriz producto se obtiene multiplicando cada elemento de la fila i de la matriz A por cada elemento de la columna j de la matriz B y sumándolos.

    Realice una función producto(A,B) que permita realizar el producto entre una matriz A de tamaño de mxn y un vector B de tamaño n.

    Ejemplo:
    A B
    2 1 2 3 25
    3 1 0 2 x 50
    2 2 1 1 100
    150
    C
    2*25=50 1*50=50 2*100=200 3*150=450
    = 75 50 0 300
    50 100 100 150

    Nota: Desarrolle el algoritmo que describa las operaciones para cada elemento Cij. No use las funciones de matlab para multiplicar matrices.

    Rúbrica: Definición de función (5 puntos), algoritmo (10 puntos).


    A = [[2,1,2,3],
         [3,1,0,2],
         [2,2,1,1]]
    B = [25,50,100,150]
    
  • 3Eva_IIT2010_T3 Juego de rompecabezas

    3ra Evaluación II Término 2010-2011, Febrero 15, 2011 /ICM00794

    Tema 3. (30 puntos). Un rompecabezas numérico se compone de fichas marcadas del 1 al 8 y colocadas aleatoriamente en un tablero de 3x3. Para la solución, se debe ordenar las fichas, dejando vacía la esquina inferior derecha, siguiendo las siguientes reglas:

    • En cada turno, el programa debe permitir al usuario mover una ficha a la casilla vacía si esta se encuentra en la misma fila o columna.
    • El juego se repite hasta formar la solución, mostrando la cantidad de turnos utilizados.

    Realice un programa que simule el juego de rompecabezas.

    Rompecabezas: :

    Solución: rompecabezas solucionado

    >> resolver
    ¿Tamaño del tablero?: 3
     Turno: 1
    8 2 6
    5 4 0
    1 7 3
    ¿Ficha a mover?:5
    Turno: 2
    8 2 6
    0 4 5
    1 7 3
    ¿Ficha a mover?:8
    Turno: 3
    0 2 6
    8 4 5
    1 7 3
    ¿Ficha a mover?:1
    Turno: 4
    1 2 6
    8 4 5
    0 7 3
    ¿Ficha a mover?: …

    Nota:

    • Se recomienda utilizar una matriz solución para validar si se ha resuelto el rompecabezas.
    • Para generar el tablero del juego, puede hace uso de la función desordena(n) del tema anterior
    • Para validar si se puede mover una ficha, puede utilizar la función ubica(matriz,k) del tema anterior.

    Rúbrica: Generación de rompecabezas y solución (5 puntos), control de turnos (5 puntos), validación de movimiento de ficha (10 puntos). Validación de solución del juego (10 puntos)

  • 3Eva_IIT2010_T2 Ubicar número dentro de una matriz

    3ra Evaluación II Término 2010-2011, Febrero 15, 2011 /ICM00794

    Tema 2 (15 puntos). Escriba una función ubica(matriz,k) que dada una matriz de tamaño n, entregue la ubicación de fila y columna del número k.

    Ejemplo siguiendo el resultado del tema 1:

    >>> matriz = np.array([[8, 2, 6],
    		       [5, 4, 0],
                           [1, 7, 3]])
    >>> ubica(matriz,7)
    array([2, 1])
    >>> 
    usando el ejemplo del tema anterior

    Observación: Considere que las filas y columnas se numeran desde 0

    Rúbrica: Definición de función (5 puntos), búsqueda de k (5 puntos). Algoritmo estructurado (5 puntos)

  • 3Eva_IIT2010_T1 Matriz con aleatorios no repetidos (desordena)

    3ra Evaluación II Término 2010-2011, Febrero 15, 2011 /ICM00794

    Tema 1 (15 puntos). Realizar una función desordena(n), que entrega una matriz cuadrada de tamaño nxn llenada de forma aleatoria con números naturales no repetidos entre 0 y n2-1

    >>> desordena(3)
    array([[8, 2, 6],
           [5, 4, 0],
           [1, 7, 3]])

    Rúbrica: Definición y uso de función (5 puntos), aleatorios no repetidos (5 puntos). Algoritmo estructurado (5 puntos)

  • 3Eva_IT2010_T3 Asignar de asientos en un avión

    3ra Evaluación I Término 2010-2011, Septiembre 14, 2010 /ICM00794

    Tema 3. (50 puntos) Una aerolínea requiere de un programa para administrar la ocupación de un vuelo por medio de las siguientes opciones en el menú mostrado.

    1. Compra de Boleto.- Registra datos de cada pasajero: cedula y nombre, siempre que exista disponibilidad de asientos. Puede usar la función ocupados() del tema anterior.
    2. Asignar asiento.- Se solicita la identificación del pasajero y la ubicación deseada por fila y columna, asignando la posición solo si está disponible. En el caso que la ubicación deseada este ocupada, se le asigna una libre usando función ubicalibre() del tema anterior. La ubicación final del pasajero se debe registrar también en la estructura de datos del pasajero.
    3. Mostrar ocupación de asientos.- permite revisar cuáles asientos se encuentran ocupados (1) o vacios (0).
    4. Lista de Pasajeros en el vuelo.- Muestra la información de pasajeros confirmados (con asiento asignado).
    5. Salir
    Pasajero
    Cedula Nombre Fila Columna
    8765 Juan 3 4
    6543 Pedro 0 0
    2345 María 4 2
    .... ...

    Sugerencia: Para el control de asientos, usar una matriz asientos(n,m) que indica: ocupados (1) o vacios (0). Al inicio se consulta el número de filas y columnas de asientos en el avión.

    Rúbrica: Estructura de Datos (10 puntos). Menú estructurado (5 puntos).Opción 1(10 puntos). Opción 2 (10 puntos). Validación de asientos (5 puntos). Pasajeros confirmados (5 puntos). Uso de funciones (5 puntos).