Skip to content

Commit 935827c

Browse files
committed
Ejercicio #27 completado
1 parent 387a00e commit 935827c

File tree

1 file changed

+44
-1
lines changed

1 file changed

+44
-1
lines changed

Roadmap/27 - SOLID OCP/java/simonguzman.java

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,29 @@
55
public class simonguzman {
66
public static void main(String[] args) {
77
//libraryViolationOcp();
8-
libraryFollowOCP();
8+
//libraryFollowOCP();
9+
calculatorTest();
10+
calculatorOCPTest();
911
}
1012
/*************************** Ejercicio adicional con ocp(Correcto) ***************************/
13+
static void calculatorOCPTest(){
14+
CalculatorOCP calculator = new CalculatorOCP();
15+
16+
double resultAdd = calculator.Calculate(new Addition(), 10, 5);
17+
System.out.println("Suma: " + resultAdd);
18+
19+
double resultSub = calculator.Calculate(new Subtraction(), 10, 5);
20+
System.out.println("Resta: " + resultSub);
21+
22+
double resultMul = calculator.Calculate(new Multiplication(), 10, 5);
23+
System.out.println("Multiplicación: " + resultMul);
24+
25+
double resultDiv = calculator.Calculate(new Division(), 10, 5);
26+
System.out.println("División: " + resultDiv);
27+
28+
double resultPow = calculator.Calculate(new Power(), 2, 3);
29+
System.out.println("Potencia: " + resultPow);
30+
}
1131
interface Operation{
1232
double function(double num1, double num2);
1333
}
@@ -55,6 +75,29 @@ public double Calculate(Operation operation, double num1, double num2){
5575

5676

5777
/*************************** Ejercicio adicional sin ocp(Incorrecto) ***************************/
78+
static void calculatorTest(){
79+
Calculator calculator = new Calculator();
80+
81+
double resultAdd = calculator.calculate("sum", 10, 5);
82+
System.out.println("Suma: " + resultAdd);
83+
84+
double resultSub = calculator.calculate("substract", 10, 5);
85+
System.out.println("Resta: " + resultSub);
86+
87+
double resultMul = calculator.calculate("multiply", 10, 5);
88+
System.out.println("Multiplicación: " + resultMul);
89+
90+
double resultDiv = calculator.calculate("divide", 10, 5);
91+
System.out.println("División: " + resultDiv);
92+
93+
try {
94+
double resultPow = calculator.calculate("power", 2, 3);
95+
System.out.println("Potencia: " + resultPow);
96+
} catch (UnsupportedOperationException e) {
97+
System.out.println("Error: " + e.getMessage());
98+
}
99+
}
100+
58101
static class Calculator{
59102
public double calculate(String operation, double num1, double num2){
60103
switch (operation) {

0 commit comments

Comments
 (0)