Está en la página 1de 2

Pontificia Universidad Javeriana

Departamento de Ingeniería de Sistemas


Pensamiento Algorítmico
Segundo Parcial Conjunto - Abril 13 de 2018
El uso de cualquier dispositivo electrónico está prohibido durante el desarrollo
del parcial. Estos dispositivos deben apagarse y guardarse antes de iniciar la
evaluación. Ignorar esta recomendación se considera como fraude.

1 (55%) Salta, salta


Un juego muy famoso en los colegios es el divertido “salta, salta”. Se cuenta con una pista lineal de casillas con
números enteros, tanto positivos como negativos. Cada jugador obtiene al inicio un número aleatorio (entre
2 y 10) de saltos a realizar. El jugador se ubica entonces en la primera casilla de la pista, y en cada salto
se mueve tantas casillas como indica la casilla en la que está ubicado actualmente. Los números positivos en
las casillas indican avance (hacia adelante), mientras que los números negativos representan retroceso (hacia
atrás) en la pista. Si en el avance se llega a la última casilla de la pista, se sigue contando a partir de la
primera casilla (se regresa al inicio para seguir contando); de la misma forma, si en el retroceso se llega a
la primera casilla, se sigue contando a partir de la última casilla de la pista (se regresa al final para seguir
contando hacia atrás). Gana el jugador que, al terminar su ronda de saltos, esté ubicado más cerca del final
de la pista (última casilla). Ejemplo:

pista 5 8 -4 3 -7 -1 5 6 -2 -7
índices 0 1 2 3 4 5 6 7 8 9

Suponga que el primer jugador obtiene 3 saltos, así que desde la primera casilla (índice 0) el primer salto
(5 casillas) lo deja en la casilla con índice 5, el segundo (-1 casillas) lo deja en la casilla con índice 4 y el tercer
salto (-7 casillas) lo deja finalmente en la casilla con índice 7. De la misma forma, suponga que el segundo
jugador obtiene 4 saltos, los tres primeros lo dejan en la casilla con índice 7, y el cuarto salto (6 casillas)
lo deja finalmente en la casilla con índice 3. Así que entre los dos jugadores, el ganador es el primero, pues
termina ubicado más cerca de la última casilla de la pista (índice 9).
Para realizar la simulación computacional de este juego, se le solicita proponer:

1. (25%) una función que reciba una pista, su tamaño y el número de saltos de un jugador, e indique el
índice de la casilla donde queda el jugador después de su ronda de saltos.

2. (30%) una función que reciba una pista, su tamaño, una cantidad de jugadores y un conjunto de
sus números de saltos asignados, e indique cuál de todos ellos es el jugador ganador, haciendo uso
(necesariamente) de la función propuesta anteriormente.

2 (45%) Re-escalamiento
En el procesamiento de señales, una de las operaciones más comunes es el re-escalamiento, en donde se obtiene
una señal de menor tamaño que la original, con la menor pérdida posible de información. Para esto, se escoge
un factor de escala (n), y para cada n elementos en la señal original se genera un único elemento en la nueva
señal, calculado como el promedio (aproximado a números enteros) de los n elementos. Ejemplo: con un
factor de escala de 3
Señal original 23 43 45 46 55 67 68 76 89 12 15 83
Señal re-escalada 37 56 78 37

Si el tamaño original de la señal no es múltiplo del factor de escala, se descartan los elementos sobrantes.
Ejemplo: con un factor de escala de 4

Señal original 67 68 76 89 12 15 83 34 76 12 98
Señal re-escalada 75 36
También suele ser útil calcular una pirámide de escalas, en donde la señal se re-escala varias veces hasta
obtener un único valor como resultado. Ejemplo: con un factor de escala de 2
Señal original 23 43 45 46 55 67 68 76 89 12 15 83 34 76 12 98
Señal en escala 1 33 46 61 72 51 49 55 55
Señal en escala 2 40 67 50 55
Señal en escala 3 54 53
Señal en escala 4 54
Se requiere generar una aplicación computacional que permita procesar diferentes señales de acuerdo a
las operaciones ya explicadas. Para esto, se le solicita proponer:
1. (20%) una función que reciba una señal, su tamaño y un factor de escala, y genere la nueva señal
re-escalada.

2. (25%) una función que reciba una señal, su tamaño y un factor de escala, y genere la pirámide de
escalas de la señal, haciendo uso (necesariamente) de la función propuesta en el punto anterior.

Tiempo máximo: 2 horas.

También podría gustarte