Corrección de la Tarea 1 2024 - S2
Corrección de la Tarea 1 2024 - S2
Resultado
El resultado de la corrección puede consultarse en Calificaciones. Deben mirar el ítem de calificación de nombre Tarea 1 2024 S2. En el campo de retroalimentación aparece el resultado de la evaluación, que consiste en la evaluación de 8 casos de prueba y una lista (posiblemente vacía) de errores encontrados. Tienen tiempo hasta las 16:00 del 18 de septiembre para realizar modificaciones que resuelvan todos los casos y otros errores que puedan y hacer la re-entrega.
Casos de prueba
La tarea fue corregida usando los 8 casos de prueba que se publicaron previamente.
Los resultados posibles para cada caso son:
m
: El test falló. La salida no es correcta.b
: El test tuvo éxito. La salida es correcta.---
: El programa no compila.
Por ejemplo, si la retroalimentación es: b
b
m
b
m
b
b
m
entonces el programa resuelve mal los casos 3, 5 y 8 y bien los casos 1, 2, 4, 6 y 7.
Correcciones adicionales
Además de los casos de prueba, se realizó una inspección automática (simple) de los códigos, analizando si se utilizan las estructuras correctas y si se aplican buenas prácticas de programación en el código Pascal
entregado.
Si no surgieron observaciones al código, aparecerá algo así:
Análisis del código:
(sin texto adicional).
Si aparece algo como por ejemplo:
Análisis del código:
sustituirLetra:USA IF,sustituirLetra:NO USA ORD,procesarMensaje:PROHIBIDAS
significa que se identificó el uso de prácticas no recomendadas o no aceptadas en los subprogramas indicados.
Explicación de los códigos
Utiliza características no contempladas
El programa es sintácticamente incorrecto o utiliza características de Free Pascal que no forman parte del estándar y no se dan en el curso.
sustituirLetra:ITERA
En la función correspondiente se usa instrucciones de iteración (FOR, WHILE o REPEAT), lo que no es necesario para definir correctamente la función.
sustituirLetra:OUTPUT
, sustituirLetra:INPUT
En la función correspondiente se utilizan sentencias de entrada/salida.
sustituirLetra:USA IF
, sustituirLetra:NO USA ORD
, sustituirLetra:NO USA MOD
En la función correspondiente se utiliza sentancias(s) IF (en lugar de CASE), no se usa la función ord
o no se usa la función mod
, respectivamente.
procesarMensaje:USA FOR
En el procedimiento correspondiente se usa la instrucción de repetición FOR
en vez de usar iteración condicional (WHILE
o REPEAT
).
procesarMensaje:MAS DE UNA LLAMADA(sustituirLetra)
En el procedimiento correspondiente se invoca a la función sustituirLetra
más de una vez.
procesarMensaje:NO USA INPUT
, procesarMensaje:NO USA OUTPUT
En el procedimiento correspondiente no se ejecutan instrucciones de lectura y despliegue en entrada/salida estándar.
sustituirLetra:PROHIBIDAS
, procesarMensaje:PROHIBIDAS
En los subprogramas correspondientes se utilizan palabras reservadas que no están permitidas (break, exit, etc).
sustituirLetra:CONSTANTES
, procesarMensaje:CONSTANTES
En los subprogramas correspondientes, en lugar de utilizar la constante definida en definiciones.pas
se utiliza .
, o se utilizan valores como 65
, 90
, 97
o 122
, que son los valores ASCII de los caracteres 'a'
,'z'
, 'A'
, 'Z'
, respectivamente.