2Eva_IT2013_T2 Una Tabla de Bingo con arreglos

2da Evaluación I Término 2013-2014, Agosto 27, 2013 /ICM00794

Tema 2. (20 puntos). Para una tarde de bingo se usaran tablas generadas con las siguientes reglas:

  • Los 5 números en cada columna son aleatorios ordenados no repetidos de acuerdo al rango asignado por columna.
  • La casilla central de la tabla tiene valor marcado cero o ‘libre’.

Realice un programa para generar una tabla de bingo.

Columna /Rango:
B entre 1 – 15
I entre 16 – 30
N entre 31 – 45
G entre 46 – 60
O entre 61 – 75
Tabla de Bingo
B I N G O
2 16 32 46 61
4 19 34 47 63
6 22 libre 49 66
7 25 37 54 70
8 26 42 60 73

Nota: Puede hacer uso de la función del tema anterior sorteoentre(K,a,b). 2Eva_IT2013_T1 Función sorteoentre(k,a,b)

Rúbrica: Programa estructurado (5 puntos), uso de funciones (5 puntos), llenado de matriz (5 puntos), salida (5 puntos)

 

2Eva_IT2013_T1 Función sorteoentre(k,a,b)

2da Evaluación I Término 2013-2014, Agosto 27, 2013 /ICM00794

Tema 1. (15 puntos) Realice una función sorteoentre(k,a,b) que selecciona k números aleatorios no repetidos en el rango comprendido entre a y b.
La función entrega un vector ordenado en forma ascendente.

>> sorteoentre(5,1,15)
ans = 2 4 6 7 8
>> sorteoentre(5,16,30)
ans = 16 19 22 25 26

No use las funciones definidas en MATLAB.

Rubrica: Definición de función (5 puntos), generar vector no repetidos (5 puntos), vector ordenado (5 puntos)


propuesta: s2Eva_IT2013_T2 Una Tabla de Bingo con arreglos

2Eva_IIT2012_T3 Contar y validar único en rango

2da Evaluación II Término 2012-2013, Enero 29, 2013 /ICM00794

Tema 3 (20 puntos)
a) Escriba una función contando(vector, n), que reciba un vector de números enteros y cuente el número de veces que se encuentra cada número en el rango entre 1 y n. Los números fuera de rango se descartan del conteo.

m
 i 1 2 3 4 5 6 7 8
 vector[i] 2 4 5 6 1 2 4 5
Ejemplo: contando(vector,6)
 n
 k 1 2 3 4 5 6
 cuenta[k] 1 2 0 2 2 1

b) Realice una función unicorango(vector, n), que muestre si los números en el vector no son repetidos y se encuentran en el rango entre 1 y n.

Ejemplos:
>>vector= [1 2 4 5 ]
 >> unicorango(vector,6)
 ans=1
>>vector= [ 1 4 4 7 ]
 >> unicorango(vector,6)
 ans=0

Rúbrica: Definición de funciones (5 puntos), contadores (5 puntos), validación de únicos (5 puntos), validación de rango (5 puntos).

2Eva_IIT2012_T2 Cifrado César

2da Evaluación II Término 2012-2013, Enero 29, 2013 /ICM00794

Tema 2 (30 puntos) Dice la historia que la criptografía fue utilizada por los gobiernos para comunicaciones secretas durante las campañas militares. encriptacinturon

En el siglo I A.C., Julio César usó un algoritmo que consistía en desplazar tres espacios hacia la derecha las letras del texto siguiendo el orden alfabético.

Realice una función cifradocesar (mensaje, llave) que usa una variante del método descrito para cifrar el mensaje, desplazando cada letra del mensaje en el alfabeto las posiciones que indique la “llave”. Con el resultado, el mensaje original no es reconocido a menos que se use el valor negativo de la “llave”.

Considerar que siguiente posición de la letra “Z” será la “A”, y la anterior a la letra “A” será la “Z”.

Ejemplo:
>> mensaje=’HOLA’ , llave=+3;
>> cifradocesar(mensaje,llave)
 ans=KROD
>> mensaje=’KROD’ , llave =-3;
>> cifradocesar(mensaje,llave)
 ans=HOLA

Rúbrica: definición de función (5 puntos), posición letra en alfabeto (7 puntos), desplazamiento (10 puntos), desplazamiento negativo (8 puntos)

Referencia: Cifrado César, http://es.wikipedia.org/wiki/Cifrado_C%C3%A9sar

2Eva_IT2012_T3 Consumo de tinta y negativo de foto

2da Evaluación I Término 2012, Agosto 28, 2012 /ICM00794

Tema 3. (25 puntos). En los contextos de fotografía digital, una imagen puede ser representada en una escala de grises, corresponden a un conjunto de colores en tonalidades entre el blanco y negro.

Se emplean 8 bits para representar cada píxel lo que sólo permite una escala con 256 intensidades o escalas de gris [0,255].

a) Realice una función totaltinta(matriz) que para una imagen representada en una matriz de nxm, muestre el equivalente numérico de las unidades de tinta a consumir en la imagen.

Suponga que en una impresora de inyección de tinta, el consumo de tinta corresponde al número escrito en la casilla de la matriz escala de gris.

matriz
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
>>totaltinta(matriz)
 ans=1550

b) Realice una función imgnegativa(matriz) que cambie la imagen a negativo, invirtiendo los valores en la escala [0,255] que contiene cada pixel (casilla). Tal como se muestra en el ejemplo.

imgnegativa(matriz)
225 225 225 255 255
225 225 225 255 255
85 85 225 225 255
175 175 85 225 225
175 175 175 85 85

Referencia: http://es.wikipedia.org/wiki/Escala_de_grises

Rúbrica: definición de funciones (5 puntos), literal a (10 puntos), literal b (10 puntos)

2Eva_IT2012_T2 Número de tecla en cifrado musical con Python

2da Evaluación I Término 2012, Agosto 28, 2012 /ICM00794

Tema 2. (25 puntos) El cifrado musical americano deriva de la notación griega que nombraba las notas musicales desde la letra alfa hasta la gamma; piano octava numera tecla

siendo alfa la nota “la” actual y gamma la nota “sol“ actual, tal como se muestra en el teclado del piano en la figura.

Realice una función teclanum(canción), que permita recibir una canción en cifrado americano mediante una cadena de caracteres, y la transforme en un arreglo que represente el número de la tecla a ser usada en secuencia.

Ejemplo:
>> cancion = 'EFGGFEDCCDEED'
>> teclanum(cancion) 
ans= 5 6 8 8 6 5 3 1 1 3 5 5 3

Nota: Considere un arreglo de letras y símbolos ordenados por posición, al implementar # observe que le añade una posición (+1) a la tecla anterior.

Referencia: http://es.wikipedia.org/wiki/Cifrado_ingl%C3%A9s ,
http://www.bgfl.org/custom/resources_ftp/client_ftp/ ks2/music/piano/index.htm

Rúbrica: Definición de función (5 puntos), selección de numero de tecla (10 puntos), determinar tecla con dos caracteres (10 puntos)

2Eva_IT2012_T1 BAnd y BOr lógicas

2da Evaluación I Término 2012, Agosto 28, 2012 /ICM00794

Tema 1 (20 puntos)
a) Escriba las funciones denominadas:
band(A,B), que devuelve resultado “A∧B” entre 2 variables enteras y otra función
bor(A,B) que devuelve el “A∨B” entre 2 variables enteras.
Ambas funciones retornan 1 si es verdadero y 0 si es falso, deben validar los datos de A y B, de existir un error devuelven -1.

b) Escriba un programa que solicite valores para las variables A, B y C, usando las funciones anteriores evalúe las siguientes ecuaciones:

X = (A ∨ B) ∧ (A ∧ C)
Y = (A ∧ B) ∨ (B ∧ C)
Z = A ∨ (A ∧ B)
W = C ∧ (A ∨ B)

Rúbrica: funciones band (5 puntos), bor (5 puntos), Programa estructurado y uso de funciones creadas en operaciones (10 puntos)

2Eva_IIT2011_T2 Ubicar ficha en tablero

2da Evaluación II Término 2011-2012, Enero 31, 2012 /ICM00794

Tema 2. (15 puntos) Escriba una función ubicaficha(m, n) que ubique aleatoriamente m números entre 2 y m+1 dentro de una matriz de nxn.

ubicaficha(6,8)
3
2
6
5
4
7

Nota: No se deben repetir las posiciones de los números y las casillas vacías se llenan con ceros.

Rúbrica: Definición de función (5 puntos), ubicación aleatoria no repetida (5 puntos), resultado y algoritmo integrado (5 puntos).

2Eva_IIT2011_T3 Movimientos del caballo en ajedrez sobre una matriz/arreglo

2da Evaluación II Término 2011-2012, Enero 31, 2012 /ICM00794

Tema 3. (25 puntos)

En un tablero de ajedrez (8×8 casillas), la ficha del caballo puede moverse entre casillas, siguiendo las siguientes reglas:

  • Las direcciones se consideran horizontales o verticales.
  • Se mueve dos casillas en una dirección, y luego una casilla en cualquier dirección perpendicular al movimiento anterior.

En la figura se muestra un ejemplo de la ubicación del caballo con el número 9 y las casillas donde se puede mover se marcan con 1.

muevecaballo(5,4)


a) Realice una función muevecaballo(f,c) que reciba las coordenadas de la ubicación del caballo en el tablero de ajedrez, asigne el valor de 1 a las casillas en las cuales puede moverse y entrega la matriz resultante.

Nota: considerar los límites del tablero y que el tablero esta ocupado solo por el caballo.

b) Escriba un programa que:

  • genere una matriz contrincante con la función ubicaficha(6,8) del tema anterior,
  • solicite las coordenadas f y c del caballo en el tablero,
  • genere otra matriz tablero con la función muevecaballo(f,c), y
  • simule el juego contando y mostrando los números que el caballo puede atacar en la matriz contrincante.

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


Referencia: Ajedrez – El caballo – 02: Explicación del movimiento del caballo

 

2Eva_IT2011_T1 Buscar valor en lista

2da Evaluación I Término 2011, Agosto 30, 2011 /ICM00794

Tema 1 (15 puntos). Realice una función enlista(número,vector) que reciba un número entero y un vector que contiene una lista de números, revise si el número se encuentra en el vector.
Las respuestas serán: si esta en lista (1), si no está en lista (0).

i vector(i)
1 456
2 654
3 234
4 987
5 876
Ejemplo:
>> enlista(789,vector)
 ans= 0
>> enlista(234,vector)
 ans=1

Rúbrica: Definición de función (5 puntos), revisión (5 puntos), respuestas (5 puntos)