Tengo un problema que yo creo que cualquier programador intermedio lo puede solucionar. El caso es que tengo un bucle while en el que si pongo en el input (por ejemplo) "suma" y añado los números se realiza la resta pero después vuelve a ejecutarse el while y sale como si hubiera puesto después nada en el input y me sale el error (y después, obviamente, se vuelve a ejecutar).
Por consola:
Calculadora
--------------------------
¿Qué operación desea realizar?
Suma
Resta
Salir
SUMA (input)
Introduce los números que quieres sumar
Número 1:
1 (input)
Número 2:
1 (input)
Resultado: 2.0
¿Qué operación desea realizar?
Suma
Resta
Salir
Error: Puede ser que hayas escrito mal la palabra. Vuelve a intentarlo
¿Qué operación desea realizar?
Suma
Resta
Salir
Si necesitáis las otras dos clases os las envio, pero creo que no hace falta, por eso no las añado.
¡Saludos!![;) ;)](https://forum.elhacker.net/Smileys/navidad/wink.gif)
Código [Seleccionar]
import java.util.Scanner;
public class MainClass {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("\tCalculadora");
System.out.println("--------------------------");
int condicion = 1;
while(condicion == 1){
System.out.println("¿Qué operación desea realizar?");
System.out.println("Suma");
System.out.println("Resta");
System.out.println("Salir");
String operacion = scan.nextLine();
if(operacion.toLowerCase().equals("suma")){
System.out.println("Introduce los números que quieres sumar");
System.out.println("Número 1: ");
double numero1 = scan.nextDouble();
System.out.println("Número 2: ");
double numero2 = scan.nextDouble();
Suma suma = new Suma(numero1, numero2);
System.out.println("Resultado: " + suma.getSuma());
}else if(operacion.toLowerCase().equals("resta")){
System.out.println("Introduce los números que quieres restar");
System.out.println("Número 1: ");
double numero1 = scan.nextDouble();
System.out.println("Número 2: ");
double numero2 = scan.nextDouble();
Resta resta = new Resta(numero1, numero2);
System.out.println("Resultado: " + resta.getResta());
}else if(operacion.toLowerCase().equals("salir")){
System.out.println("¡Adiós! ;)");
condicion = 0;
}else{
System.out.println("Error: Puede ser que hayas escrito mal la palabra. Vuelve a intentarlo");
}
}
}
}
Por consola:
Calculadora
--------------------------
¿Qué operación desea realizar?
Suma
Resta
Salir
SUMA (input)
Introduce los números que quieres sumar
Número 1:
1 (input)
Número 2:
1 (input)
Resultado: 2.0
¿Qué operación desea realizar?
Suma
Resta
Salir
Error: Puede ser que hayas escrito mal la palabra. Vuelve a intentarlo
¿Qué operación desea realizar?
Suma
Resta
Salir
Si necesitáis las otras dos clases os las envio, pero creo que no hace falta, por eso no las añado.
¡Saludos!
![;) ;)](https://forum.elhacker.net/Smileys/navidad/wink.gif)