Calculadora básica en Java

1. Información general

En este tutorial, implementaremos una calculadora básica en Java que admite operaciones de suma, resta, multiplicación y división.

También tomaremos el operador y los operandos como entradas y procesaremos los cálculos basados ​​en ellos.

2. Configuración básica

Primero, mostremos algo de información sobre la calculadora:

System.out.println("---------------------------------- \n" + "Welcome to Basic Calculator \n" + "----------------------------------"); System.out.println("Following operations are supported : \n" + "1. Addition (+) \n" + "2. Subtraction (-) \n" + "3. Multiplication (*) \n" + "4. Division (/) \n");

Ahora, usemos java.util.Scanner para tomar las entradas del usuario:

Scanner scanner = new Scanner(System.in); System.out.println("Enter an operator: (+ OR - OR * OR /) "); char operation = scanner.next().charAt(0); System.out.println("Enter the first number: "); double num1 = scanner.nextDouble(); System.out.println("Enter the second number: "); double num2 = scanner.nextDouble();

A medida que ingresamos entradas al sistema, debemos validarlas. Por ejemplo, si el operador no es +, -, * o /, entonces nuestra calculadora debería indicar la entrada incorrecta. De manera similar, si ingresamos el segundo número como 0 para la operación de división, los resultados no serán buenos.

Entonces, implementemos estas validaciones.

Primero, centrémonos en la situación en la que el operador no es válido:

if (!(operation == '+' || operation == '-' || operation == '*' || operation == '/')) { System.err.println("Invalid Operator. Please use only + or - or * or /"); }

Entonces podemos mostrar errores por operaciones no válidas:

if (operation == '/' && num2 == 0.0) { System.err.println("The second number cannot be zero for division operation."); }

Primero se validan las entradas del usuario. Después de eso, el resultado del cálculo se mostrará como:

=

3. Procesamiento de cálculos

En primer lugar, podemos usar una construcción if-else para procesar cálculos

if (operation == '+') { System.out.println(num1 + " + " + num2 + " = " + (num1 + num2)); } else if (operation == '-') { System.out.println(num1 + " - " + num2 + " = " + (num1 - num2)); } else if (operation == '*') { System.out.println(num1 + " x " + num2 + " = " + (num1 * num2)); } else if (operation == '/') { System.out.println(num1 + " / " + num2 + " = " + (num1 / num2)); } else { System.err.println("Invalid Operator Specified."); }

De manera similar, podemos usar una declaración de cambio de Java :

switch (operation) { case '+': System.out.println(num1 + " + " + num2 + " = " + (num1 + num2)); break; case '-': System.out.println(num1 + " - " + num2 + " = " + (num1 - num2)); break; case '*': System.out.println(num1 + " x " + num2 + " = " + (num1 * num2)); break; case '/': System.out.println(num1 + " / " + num2 + " = " + (num1 / num2)); break; default: System.err.println("Invalid Operator Specified."); break; }

Podemos usar una variable para almacenar los resultados del cálculo. Como resultado, se puede imprimir al final. En este caso, System.out.println se utilizará solo una vez.

Además, el rango máximo para los cálculos es 2147483647. En consecuencia, si lo excedemos, desbordaremos de un tipo de datos int . Por lo tanto, debe almacenarse en una variable de un tipo de datos más grande, por ejemplo, un tipo de datos doble .

4. Conclusión

En este tutorial, implementamos una calculadora básica en Java, usando dos construcciones diferentes. También nos aseguramos de que las entradas estén validadas antes de procesarlas más.

Como siempre, el código está disponible en GitHub.