Confeccionaremos un problema y agregaremos adrede una serie de errores tipográficos. Este tipo de errores siempre son detectados por el COMPILADOR, antes de ejecutar el programa.
A los errores tipográficos, como por ejemplo la falta de puntos y comas, nombres de variables incorrectas, falta de paréntesis, palabras claves mal escritas, etc. los llamamos errores SINTACTICOS.
Un programa no se puede ejecutar sin corregir absolutamente todos los errores sintácticos.
Existe otro tipo de errores llamados ERRORES LOGICOS. Este tipo de errores en programas grandes (miles de líneas) son más difíciles de localizar. Por ejemplo un programa que permite hacer la facturación pero la salida de datos por impresora es incorrecta.
Problema:
Hallar la superficie de un cuadrado conociendo el valor de un lado.
Diagrama de flujo:
Proyecto:
Ver videoCreemos un proyecto llamado SuperficieCuadrado y una clase llamada SuperficieCuadrado.
Codificamos el algoritmo en Java e introducimos dos errores sintáctico:
1 - Disponemos el nombre del objeto System con minúsculas.
2 - Tratamos de imprimir el nombre de la variable superficie con el primer caracter en mayúsculas.
Como podemos observar aparece subrayado la línea donde disponemos System con minúsculas como en la línea que imprimimos la variable superficie con mayúsculas. Si modificamos y corregimos los dos errores sintácticos podremos ejecutar nuestro programa.
Programa correctamente codificado:
import java.util.Scanner; public class SuperficieCuadrado { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int lado; int superficie; System.out.print("Ingrese el valor del lado del cuadrado:"); lado=teclado.nextInt(); superficie=lado * lado; System.out.print("La superficie del cuadrado es:"); System.out.print(superficie); } }
Programa con un error lógico:
import java.util.Scanner; public class SuperficieCuadrado { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int lado; int superficie; System.out.print("Ingrese el valor del lado del cuadrado:"); lado=teclado.nextInt(); superficie=lado * lado * lado; System.out.print("La superficie del cuadrado es:"); System.out.print(superficie); } }
No hay comentarios:
Publicar un comentario