Problema
Desarrolle un programa que ejecute las siguiente operaciones con dos números enteros: suma, resta, multiplicación y modulo. El programa debe:
- Mostrar mensaje que solicite por consola dos números enteros.
- Mostrar mensaje por consola que especifique operación a desarrollar:
- Suma
- Resta
- Multiplicación
- Modulo
- Mostrar un mensaje en consola que determine el resultado de la operación.
- Desarrollar el ejercicio con if y enum . Identificar diferencias y comentarlas con los compañeros.
- Intentar compilarlo y ejecutarlo desde el promt (Windows) ó Terminal (Mac y Linux).
Solución
La solución que se propone emplea enum solamente. Se deja al lector la implementación de la solución con if.
Clase Operacion
package certification1;
import java.util.Scanner;
public class Operacion {
Scanner read = new Scanner(System.in);
private int val1, val2;
private int option = 4; // Default is modulo
private String cont = "y";
public void start_Msg1(){
System.out.printf("%20s","Digite dos numeros enteros:");
val1 = read.nextInt();
val2 = read.nextInt();
}
public void start_Msg2(){
System.out.printf("%20s \n","Digite la opción que desea ejecutar:");
System.out.printf("%-20s \n", "1) Suma");
System.out.printf("%-20s \n", "2) Resta");
System.out.printf("%-20s \n", "3) Multiplicación");
System.out.printf("%-20s \n", "4) Modulo");
System.out.printf("%-8s","Opción: ");
option = read.nextInt();
}
public void end_Msg(){
System.out.println("---------------");
System.out.printf("%-20s","Desea continuar con otra operación (y / n): ");
cont = read.next();
System.out.println("---------------");
}
public void Suma(){
System.out.println(val1 + " + " + val2 + " = " + (val1 + val2));
}
public void Resta(){
System.out.println(val1 + " - " + val2 + " = " + (val1 - val2));
}
public void Multiplicacion(){
System.out.println(val1 + " * " + val2 + " = " + (val1 * val2));
}
public void Modulo(){
System.out.println(val1 + " % " + val2 + " = " + (val1 % val2));
}
public void start(){
boolean test = true;
boolean condition = true;
while(cont.equals("y")){
if(condition){
start_Msg1();
start_Msg2();
switch(option){
case 1:
Suma();
end_Msg();
break;
case 2:
Resta();
end_Msg();
break;
case 3:
Multiplicacion();
end_Msg();
break;
case 4:
Modulo();
end_Msg();
break;
default:
System.out.println("Incorrect value");
break;
}
}
}
}
}
Método Main
package certification1;
public class Certification1 {
public static void main(String[] args) {
Operacion Op = new Operacion();
Op.start();
}
}
No comments:
Post a Comment