Está en la página 1de 2

2019-01 Programación Avanzada

Quinta Evaluación Práctica

Objetivo
Profundizar lo aprendido en los aspectos de las Pilas y las Colas.

Restricción
Solo puede utilizar Pilas y Colas en conformidad con lo visto en las sesiones de cátedra. Puede implementar nuevos
métodos si los requiere, pero no puede utilizar funciones predefinidas del Lenguaje (excepto aquellas que
expresamente autorice el docente). Es decir, todo el trabajo debe ser a través de Objetos y Métodos a los que
pertenecen dichos objetos.

Contexto
Dada una lista (normal, no enlazada) que contiene letras y números, se pide que escriba una función que invierta el
orden de los números sin modificar la posición de las letras.

Por ejemplo [3,a,t,7,q,h,5,10] se convierte en [10,a,t,5,q,h,7,3].

Importante
1. Note que se entregó solo un ejemplo de la entrada y la salida esperada y que la lista de prueba con la que se
revisará su función podría tener más, menos u otros elementos. Es decir, su trabajo será probado con otra lista.
2. La lista de ejemplo contiene solo números y strings. No contiene variables.

Requerimiento
Cree una función llamada “invertirLista” que reciba una lista y retorne dicha lista invertida según lo indicado. Sin
embargo, solo puede utilizar pilas y/o las colas para almacenar los datos de la lista y solucionar este problema (Por
ejemplo, no puede utilizar funciones/comandos predefinidos como reverse). En sí, se permite que tome los datos
de la lista (que considere necesarios), los pase a una pila y/o cola y, finalmente, los ponga en el orden requerido
(en la lista) a través de las operaciones de pilas y/o colas (según corresponda). Adicionalmente, puede utilizar la
función “len” si es que la requiere.

Ayuda
Puede utilizar la siguiente función (la deberá escribir en su programa si es que la utiliza), que retorna verdadero si
el string x es numérico (y falso si no es numérico) como apoyo para su trabajo:
Normas generales
1. El trabajo es completamente individual y NO CONTEMPLA un archivo Main.
2. Deberá incluir las Clases Pila y/o Cola que utilizó para resolver este trabajo. Es decir, no puede asumir que
existen. Sin perjuicio de lo anterior, la base de la implementación de los mismos es la que se revisó en clase.
3. La copia, plagio o cualquier acto deshonesto será sancionado con nota mínima (1.0) e informado a la Dirección
de Escuela.
4. La evaluación será revisada con la escala de 60% sobre 100 puntos totales.
5. El formato de entrega deberá ser una carpeta comprimida en formato .ZIP con todos los archivos. El nombre
del archivo comprimido debe su nombre completo y ID separado por un guión. Por ejemplo: “Pedro Pablo
Pérez Pereira – 00111111.zip” (sin las comillas).

Plazo y Forma de entrega


1. La fecha límite para la entrega de este trabajo es el sábado 08 de junio de 2019 hasta las 23:00hrs vía Buzón
de Tareas habilitado en la sección de Cátedra.
2. Solo en caso de falla del sistema eFinis, deberá remitir su trabajo vía correo electrónico al mail del ayudante.
3. La entrega con retraso será penalizada a razón de 1 décima por minuto. Es decir, si entrega a las 23:05hrs del
día límite, tendrá un descuento de 5 décimas. La hora válida para esto será la del Sistema eFinis (o correo
electrónico en caso de falla del medio principal).