Pág.70 - 9-nov-09 - Segunda Edición - Descargue gratuitamente esta Guía: http://www.eduteka.org/GuiaAlgoritmos.php Resultados esperados: Un aviso que reporte si el estudiante “Aprobó” o “Reprobó” el examen. Datos disponibles: La calificación ingresada por el usuario. Para aprobar, la nota debe ser mayor o igual a 6.0. Restricciones: Aplicar el criterio de aprobación. Procesos necesarios: Solicitar al usuario que ingrese la calificación. Evaluar si la calificación es igual o superior a 6.0; en caso de ser verdadero, reportar “Aprobado”; en caso contrario, reportar “Reprobado”. DISEÑO DEL ALGORITMO TRADUCCIÓN DEL ALGORITMO para aprueba1 local "calificación preguntas [Ingrese la Calificación] da "calificación respuesta siotro (o :calificación > 6.0 :calificación = 6.0) [ anuncia [Aprobado] ] [ anuncia [Reprobado] ] fin Obsérvese que MicroMundos arroja un mensaje de error cuando se ejecuta el procedimiento: “No sé cómo hacer preguntas en aprueba1”. Este error se produce porque el comando pregunta está mal escrito, en su lugar se escribió preguntas. El problema se soluciona al escribir correctamente el comando indicado. Fallas de lógica Este tipo de falla se presenta tanto en MicroMundos como en Scratch. Para identificar fallas de tipo lógico en un procedimiento que no se interrumpe en ningún momento y que arroja unos resultados, estos se deben revisar cuidadosamente. Uno de los procedimientos más utilizados es el que se conoce como prueba de escritorio. Esta consiste seguir paso a paso cada una de las instrucciones del procedimiento, asignando valores iniciales a variables y constantes y, realizando las operaciones indicadas en cada instrucción hasta llegar al final del procedimiento. Luego, comparar los resultados que produce la prueba de escritorio con los resultados que arroja el procedimiento; ambos conjuntos de resultados deben ser iguales. Esta metodología es viable cuando los procedimientos son sencillos, con pocas instrucciones. En caso de presentarse una falla de lógica, el estudiante debe: Examinar el diagrama de flujo para detectar instrucciones que faltan, sobran o que se encuentran en la posición incorrecta Asegurarse que las instrucciones representan rigurosamente el diagrama de flujo Utilizar las opciones de MicroMundos y Scratch para ver la ejecución del programa en forma lenta. EJEMPLO 4-2 Continuamos con el mismo ejemplo: Elaborar un procedimiento que pida al usuario una calificación, aplique el criterio de aprobación e imprima “Aprobado” o “Reprobado”, según sea el caso. Con el fin de ejemplificar una falla de lógica, se debe digitar en el área de procedimientos de MMP el siguiente código que representa el algoritmo del ejemplo 4-1. TRADUCCIÓN DEL ALGORITMO para aprueba2 local "calificación pregunta [Ingrese la Calificación] da "calificación respuesta siotro (o :calificación < 6.0 :calificación = 6.0) [ anuncia [Aprobado] ] [ anuncia [Reprobado] ] fin Obsérvese que el procedimiento “aprueba2” se ejecuta correctamente; no aparece ningún error de sintaxis. Pero no funciona bien desde el punto de vista lógico. Si lo probamos con el valor 5, el procedimiento nos reporta que el estudiante aprobó la materia, cuando esto no es correcto. Si lo probamos con 7, nos reporta que el estudiante reprobó, cuando tampoco es exacto. En cambio, cuando lo probamos con 6 nos dice que el estudiante aprobó y este dato si es correcto. El problema radica en que en el comando siotro se digitó erróneamente “<” en lugar de “>”, tal como aparece en el diagrama de flujo. Adicionalmente, en este ejemplo se puede observar la sintaxis en MicroMundos de los operadores lógicos (y, o,
Created with BuildVu