diff --git a/Circuito/.gitignore b/Circuito/.gitignore new file mode 100644 index 0000000..f68d109 --- /dev/null +++ b/Circuito/.gitignore @@ -0,0 +1,29 @@ +### IntelliJ IDEA ### +out/ +!**/src/main/**/out/ +!**/src/test/**/out/ + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache +bin/ +!**/src/main/**/bin/ +!**/src/test/**/bin/ + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/Circuito/.idea/.gitignore b/Circuito/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/Circuito/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/Circuito/.idea/misc.xml b/Circuito/.idea/misc.xml new file mode 100644 index 0000000..03f397c --- /dev/null +++ b/Circuito/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Circuito/.idea/modules.xml b/Circuito/.idea/modules.xml new file mode 100644 index 0000000..ecb9082 --- /dev/null +++ b/Circuito/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Circuito/.idea/uiDesigner.xml b/Circuito/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/Circuito/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Circuito/.idea/vcs.xml b/Circuito/.idea/vcs.xml new file mode 100644 index 0000000..6c0b863 --- /dev/null +++ b/Circuito/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Circuito/Circuito.iml b/Circuito/Circuito.iml new file mode 100644 index 0000000..c90834f --- /dev/null +++ b/Circuito/Circuito.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Circuito/src/Circuit.java b/Circuito/src/Circuit.java new file mode 100644 index 0000000..0444bc1 --- /dev/null +++ b/Circuito/src/Circuit.java @@ -0,0 +1,3 @@ +public interface Circuit { + public double getResistance(); +} diff --git a/Circuito/src/CircuitTester.java b/Circuito/src/CircuitTester.java new file mode 100644 index 0000000..969eb2e --- /dev/null +++ b/Circuito/src/CircuitTester.java @@ -0,0 +1,15 @@ +public class CircuitTester { + public static void main(String[] args) { + Serial circuito = new Serial(); + + circuito.addCircuit(new Resistor(10)); + + Parallel p1 = new Parallel(); + p1.addCircuit(new Resistor(20)); + p1.addCircuit(new Resistor(50)); + + circuito.addCircuit(p1); + + System.out.println(circuito.getResistance()); + } +} \ No newline at end of file diff --git a/Circuito/src/Parallel.java b/Circuito/src/Parallel.java new file mode 100644 index 0000000..c7c5d97 --- /dev/null +++ b/Circuito/src/Parallel.java @@ -0,0 +1,27 @@ +import java.util.ArrayList; + +public class Parallel implements Circuit { + private final ArrayList parallelo; + + public Parallel() { + parallelo = new ArrayList<>(); + } + + public void addCircuit(Circuit c) { + parallelo.add(c); + } + + @Override + public double getResistance() { + double resEq = 0; + for (Circuit c : parallelo) { + resEq += 1.0 / c.getResistance(); + } + return 1.0/resEq; + } + + @Override + public String toString() { + return "Parallel{" + parallelo + '}'; + } +} diff --git a/Circuito/src/Resistor.java b/Circuito/src/Resistor.java new file mode 100644 index 0000000..d2824dc --- /dev/null +++ b/Circuito/src/Resistor.java @@ -0,0 +1,17 @@ +public class Resistor implements Circuit { + private final double resistance; + + public Resistor(double resistance) { + this.resistance = resistance; + } + + @Override + public double getResistance() { + return resistance; + } + + @Override + public String toString() { + return "" + resistance; + } +} diff --git a/Circuito/src/Serial.java b/Circuito/src/Serial.java new file mode 100644 index 0000000..c090cee --- /dev/null +++ b/Circuito/src/Serial.java @@ -0,0 +1,27 @@ +import java.util.ArrayList; + +public class Serial implements Circuit { + private final ArrayList serie; + + public Serial() { + serie = new ArrayList<>(); + } + + public void addCircuit(Circuit c) { + serie.add(c); + } + + @Override + public double getResistance() { + double resEq = 0; + for (Circuit c : serie) { + resEq += c.getResistance(); + } + return resEq; + } + + @Override + public String toString() { + return "Serial{" + serie + '}'; + } +}