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 3×3. 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_IT2010_T2 Funciones ocupados y ubica libre en matriz

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

Tema 2. (25 puntos) La matriz asientos(n,m) corresponde a la pre-asignación de asientos de una avión administrado por una aerolínea, que utiliza la nomenclatura de Ocupado(1) y vacio(0).

Asientos(i,j)
ventana pasillo pasillo ventana
1 2 3 m=4
Fila 1 0 0 0 0
2 0 0 0 0
3 0 0 0 1
4 0 1 0 0
19 0 0 0 0
n=20 0 0 0 0

Realice una función ocupados(matriz asientos) que reciba una matriz de asientos y entregue la cantidad de asientos ocupados.

Realice una función ubicalibre( matriz asientos) que entregue la ubicación del primer asiento desocupado en el caso de que existan.

Rúbrica: Definición de función (5 puntos). Procedimiento de función ocupados (8 puntos).Procedimiento de función ubicalibre (12 puntos)


matriz = [[1,1,1,1],
          [1,0,0,0],
          [0,1,0,1]]

ocupados:  7
primer libre encontrado:  [1, 1]
>>>

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_T1 Ecuación Verhulst

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

Tema 1 (25 puntos) El crecimiento de población de varios países fue presentado por el matemático-biólogo Verhulst mediante un modelo matemático denominado ecuación logística.

P(t) = \frac{a P_0}{b P_0 + (a-b P_0)e^{-at}}

El valor de Po es la población inicial, y las variables a y b son factores de crecimiento característicos de ese país.

Realice una función logística(Po,a,b,t) que calcule el valor de P para el tiempo t.

Escriba un programa que solicite valores para Po, a, b, t y usando la función logística muestre en un arreglo los valores de crecimiento de la población en el periodo comprendido desde 1 hasta t en incrementos unitarios.

Finalmente el programa mostrará el valor de t para cuando la población supera el doble de su valor inicial.

Rúbrica: Definición de la función (5 puntos). Arreglo de crecimientos (10 puntos) y muestra el valor de t requerido (10 puntos).

3Eva_IIT2009_T3 Convertir hora 12h a 24h

3ra Evaluación II Término 2009-2010. Febrero 23, 2010 /ICM00794

Tema 3. (20 puntos) Realice una función hora24(texto) que reciba la hora en formato de 12 horas (hh:mm am/pm) y la convierta a un formato de 24 horas (hh:mm).

Ejemplo:
>> hora24(’08:30 pm’)
 ans= 20:30
>> hora24(’10:30 am’)
 ans= 10:30

Nota: El formato de hora se puede considerar tipo texto.

Rúbrica: Definición de función (5 puntos), determinación de am/pm para ajuste de hora (7 puntos), ajuste de hora (8 puntos).

3Eva_IT2009_T1 Verificar todas las vocales en palabra

3ra Evaluación I Término 2009-2010. Septiembre 15, 2009 /ICM00794

Tema 1 (15 puntos). Realice la función todavocal(palabra), la cual recibe una palabra y determine si contiene una vez cada una de las vocales. Ejemplo:

 >> todavocal('ecuatoriano')    ans=0
 >> todavocal('murcielago')     ans=1

Nota: la palabra ‘ecuatoriano’ tiene dos veces la ‘a’, por lo que el resultado es ‘falso’ ó  0.

Rúbrica: Definir correctamente la función (5 puntos) Buscar y contar cada Vocal (5 puntos), respuesta integral (5 puntos)

2Eva_IT2005_T3 Adivina palabra (ahorcado)

Final I Término 2005 – 2006. Agosto 28, 2005 /ICM00794

Tema 3. (35 puntos). Adivina la palabra: Es un juego que consiste en presentar una cantidad de espacios numerados dependiendo de la longitud de una palabra.

El jugador deberá de adivinar la letra oculta de los respectivos espacios conociendo solamente si es una vocal o consonante.
juegoahorcado

El jugador podrá tener como máximo 5 fallas antes de completar la palabra o perderá el juego.

Con el fin de programar el juego, escriba en matlab una función esvocal(caracter) que reciba un carácter y retorne 1 si es vocal y 0 si no lo es (entonces es consonante)

Escriba un programa en matlab que simule el juego descrito ingresando una palabra inicial de acuerdo a la siguiente muestra:

>>juego
Palabra: ECUADOR
Letras:
1 2 3 4 5 6 7
FALLOS=0:
Ingrese Letra 1 y es vocal: E
E 2 3 4 5 6 7
FALLOS=0
Ingrese Letra 2 y es consonante: C
E C 3 4 5 6 7
FALLOS=0
Ingrese Letra 3 y es vocal: O
E C 3 4 5 6 7
FALLOS=1
Ingrese Letra 3 y es vocal: U
E C U 4 5 6 7
FALLOS=1
Ingrese Letra 4 y es vocal: _
…

Notas: Convierta la palabra ingresada en mayúsculas. En el programa use la función vocal(caracter). Para convertir enteros a carácter use int2str().

Rúbrica: función vocal (10 puntos), convertir palabra a numeros (5 puntos),  reemplazo de numero por letra (5 puntos), juego general (15 puntos)

2Eva_IT2005_T1 Completar cadena con padright

Final I Término 2005 – 2006. Agosto 28, 2005 /ICM00794

Tema 1. (10puntos) Escriba una función padright(mensaje,caracter,n) que dada una cadena de caracteres, un caracter y una cantidad n, rellene la primera cadena a la derecha con el caracter hasta que la longitud de la primera cadena alcance el valor n indicado.

Ejemplo:
 mensaje = 'HOLA MUNDO'
 caracter = ‘-‘ 
 n = 20
 resultado = 'HOLA MUNDO----------'

3Eva_IT2008_T3 IMC: índice masa corporal

3ra Evaluación I Término 2008-2009. Septiembre 16, 2008 /ICM00794

Tema 3 (15 puntos) El índice de masa corporal (IMC) es el cociente entre el peso de una persona en Kg dividido para su estatura al cuadrado en metros.

La Organización Mundial de la Salud OMS, clasifica a las personas según su IMC de la siguiente forma:

IMC Tipo IMC
Menos de 17 1. Infrapeso
más de 17 hasta 18 2. Bajo Peso
mas de 18 hasta 25 3. Peso Normal
mas de 25 hasta 30 4. Obesidad tipo I
más de 30 hasta 35 5. Obesidad tipo II
mas de 35 hasta 40 6. Obesidad tipo III
mas de 40 7. Obesidad mórbida
Ejemplo:
peso=75 Kg; 
estatura=1.70 m ; 
75/(1.70*1.70)=25.95 equivale a tipo 4.

>> tipoimc(75,1.70)
 ans= 4

Escriba una función tipoimc(peso,estatura) que reciba el peso y estatura de una persona para dar como resultado el tipo de masa corporal (15 puntos)


[ Ejercicio resuelto ]

Referencia: Obesidad y sobrepeso. Datos y cifras. 9 de junio de 2021. OMS. https://www.who.int/es/news-room/fact-sheets/detail/obesity-and-overweight

¿Por qué el índice de masa corporal no es un valor fiable?. Dw Español. 6 feb 2023