/ CalculadoraPrimitiva.java
CalculadoraPrimitiva.java
1 2 /* Realiza un programa que lea dos números, calcule y muestre el valor de su suma, resta, producto, 3 potencia y división. (Ten en cuenta que no se puede dividir por cero) */ 4 import java.util.Scanner; 5 6 public class CalculadoraPrimitiva { 7 // Método 1: El principal (punto de entrada) 8 public static void main(String[] args) { 9 Scanner sc = new Scanner(System.in); 10 11 int valorA = leerNums(sc, "Inserte un número: "); 12 int valorB = leerNums(sc, "Inserte otro número: "); 13 14 int suma = valorA + valorB; 15 System.out.println(valorA + " + " + valorB + " es igual a: " + suma); 16 17 int resta = valorA - valorB; 18 System.out.println(valorA + " - " + valorB + " es igual a: " + resta); 19 20 int producto = valorA * valorB; 21 System.out.println(valorA + " x " + valorB + " es igual a: " + producto); 22 23 if (valorB != 0) { 24 double division = (double) valorA / valorB; 25 System.out.println(valorA + " / " + valorB + " es igual a: " + division); 26 } else { 27 System.out.println("No se puede dividir por 0"); 28 } 29 30 double potencia = Math.pow(valorA, valorB); 31 System.out.println(valorA + " ^ " + valorB + " es igual a: " + potencia); 32 33 sc.close(); 34 } 35 36 // Método 2: Método auxiliar para validar entrada 37 public static int leerNums(Scanner sc, String mensaje) { 38 int valor = 0; 39 boolean entradaValida = false; 40 41 while (!entradaValida) { 42 try { 43 System.out.print(mensaje); // Pintará el mensaje como 2do param que le pasemos a la función 44 valor = sc.nextInt(); // Espera la entrada de tipo integer 45 sc.nextLine(); // Limpiar buffer después del nextInt() 46 entradaValida = true; // Salir del bucle 47 } catch (Exception e) { 48 System.out.println("Error: Debes introducir un número."); 49 sc.nextLine(); // Limpiar el input inválido del buffer 50 } 51 } 52 53 return valor; 54 } 55 }