From 9d77a7f693afd60d46ed19b3c0faa49ab17b74f3 Mon Sep 17 00:00:00 2001 From: David ZN Date: Mon, 13 Apr 2026 20:23:48 +0200 Subject: [PATCH 1/2] Lab3 --- README.md | 18 +++-- lab-solution3/pom.xml | 9 +++ lab-solution3/src/main/java/Main.java | 59 +++++++++++++++++ .../com/ironhack/BigDecimalOperations.java | 26 ++++++++ .../src/main/java/com/ironhack/Car.java | 66 +++++++++++++++++++ .../src/main/java/com/ironhack/IntList.java | 52 +++++++++++++++ .../src/main/java/com/ironhack/Video.java | 47 +++++++++++++ .../resources/META-INF/maven/archetype.xml | 9 +++ .../resources/archetype-resources/pom.xml | 15 +++++ .../src/main/java/App.java | 13 ++++ .../src/test/java/AppTest.java | 38 +++++++++++ 11 files changed, 345 insertions(+), 7 deletions(-) create mode 100644 lab-solution3/pom.xml create mode 100644 lab-solution3/src/main/java/Main.java create mode 100644 lab-solution3/src/main/java/com/ironhack/BigDecimalOperations.java create mode 100644 lab-solution3/src/main/java/com/ironhack/Car.java create mode 100644 lab-solution3/src/main/java/com/ironhack/IntList.java create mode 100644 lab-solution3/src/main/java/com/ironhack/Video.java create mode 100644 lab-solution3/src/main/resources/META-INF/maven/archetype.xml create mode 100644 lab-solution3/src/main/resources/archetype-resources/pom.xml create mode 100644 lab-solution3/src/main/resources/archetype-resources/src/main/java/App.java create mode 100644 lab-solution3/src/main/resources/archetype-resources/src/test/java/AppTest.java diff --git a/README.md b/README.md index ce069b6..d14dff7 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,8 @@ Once you finish the assignment, submit a URL link to your repository or your pul ### BigDecimal Operations -1. Using the [BigDecimal documentation](https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html), create a method that accepts a `BigDecimal` and returns a `double` of the `BigDecimal` number rounded to the nearest hundredth. For example, `4.2545` should return `4.25`. -2. Using the [BigDecimal documentation](https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html), create a method that accepts a `BigDecimal`, reverses the sign (if the parameter is positive, the result should be negative and vice versa), rounds the number to the nearest tenth and returns the result. For example, `1.2345` should return `-1.2` and `-45.67` should return `45.7`. +1. Using the [BigDecimal documentation](https://docs.oracle.com/javase/7/docs/api/java/com.ironhack.math/BigDecimal.html), create a method that accepts a `BigDecimal` and returns a `double` of the `BigDecimal` number rounded to the nearest hundredth. For example, `4.2545` should return `4.25`. +2. Using the [BigDecimal documentation](https://docs.oracle.com/javase/7/docs/api/java/com.ironhack.math/BigDecimal.html), create a method that accepts a `BigDecimal`, reverses the sign (if the parameter is positive, the result should be negative and vice versa), rounds the number to the nearest tenth and returns the result. For example, `1.2345` should return `-1.2` and `-45.67` should return `45.7`.
@@ -117,7 +117,7 @@ Once you finish the assignment, submit a URL link to your repository or your pul Here's how you can use `BigDecimal` in a Java program: ```java - import java.math.BigDecimal; + import java.com.ironhack.math.BigDecimal; public class BigDecimalExample { public static void main(String[] args) { @@ -149,7 +149,7 @@ Once you finish the assignment, submit a URL link to your repository or your pul `setScale()` is used to set the scale of a `BigDecimal` object, which determines the number of decimal places to keep. For example: ```java - import java.math.BigDecimal; + import java.com.ironhack.math.BigDecimal; public class BigDecimalExample { public static void main(String[] args) { @@ -166,8 +166,8 @@ Once you finish the assignment, submit a URL link to your repository or your pul `RoundingMode` is an enumeration in Java that defines the different rounding modes that can be used with `BigDecimal`. For example: ```java - import java.math.BigDecimal; - import java.math.RoundingMode; + import java.com.ironhack.math.BigDecimal; + import java.com.ironhack.math.RoundingMode; public class BigDecimalExample { public static void main(String[] args) { @@ -184,7 +184,7 @@ Once you finish the assignment, submit a URL link to your repository or your pul `negate()` is used to negate the value of a `BigDecimal` object, converting a positive value to a negative and vice versa. For example: ```java - import java.math.BigDecimal; + import java.com.ironhack.math.BigDecimal; public class BigDecimalExample { public static void main(String[] args) { @@ -337,3 +337,7 @@ Once you finish the assignment, submit a URL link to your repository or your pul +Criterio IntArrayList (50%) IntVector (100%) +Uso de Memoria Más eficiente (ahorra espacio) Menos eficiente (desperdicia espacio) +Velocidad Más lenta en inserciones constantes Más rápida en inserciones constantes +Casos de uso Apps móviles o dispositivos embebidos Procesamiento de grandes volúmenes de datos \ No newline at end of file diff --git a/lab-solution3/pom.xml b/lab-solution3/pom.xml new file mode 100644 index 0000000..e51a8a6 --- /dev/null +++ b/lab-solution3/pom.xml @@ -0,0 +1,9 @@ + + 4.0.0 + org.example + lab-solution3 + 1.0-SNAPSHOT + Archetype - lab-solution3 + http://maven.apache.org + diff --git a/lab-solution3/src/main/java/Main.java b/lab-solution3/src/main/java/Main.java new file mode 100644 index 0000000..2c417e4 --- /dev/null +++ b/lab-solution3/src/main/java/Main.java @@ -0,0 +1,59 @@ +package com.ironhack; + +import java.math.BigDecimal; + +public class Main { + public static void main(String[] args) { + + // 1. Prueba de BigDecimal Operations + System.out.println("--- 1. BigDecimal Operations ---"); + BigDecimal testNum1 = new BigDecimal("4.2545"); + System.out.println("Original: 4.2545 | Redondeado (centésimas): " + + BigDecimalOperations.roundToHundredth(testNum1)); + + BigDecimal testNum2 = new BigDecimal("1.2345"); + BigDecimal testNum3 = new BigDecimal("-45.67"); + System.out.println("Original: 1.2345 | Invertido y Redondeado (décimas): " + + BigDecimalOperations.inverseAndRoundToTenth(testNum2)); + System.out.println("Original: -45.67 | Invertido y Redondeado (décimas): " + + BigDecimalOperations.inverseAndRoundToTenth(testNum3)); + System.out.println(); + + // 2. Prueba de Car Inventory System + System.out.println("--- 2. Car Inventory System ---"); + Car mySedan = new Sedan("ABC12345", "Toyota", "Corolla", 15000); + Car mySUV = new UtilityVehicle("XYZ67890", "Jeep", "Wrangler", 5000, true); + Car myTruck = new Truck("TRK999", "Ford", "F-150", 25000, 5000.5); + + System.out.println(mySedan.getInfo()); + System.out.println(mySUV.getInfo()); + System.out.println(myTruck.getInfo()); + System.out.println(); + + // 3. Prueba de Video Streaming Service + System.out.println("--- 3. Video Streaming Service ---"); + Video myMovie = new Movie("Inception", 148, 8.8); + Video mySeries = new TvSeries("The Bear", 30, 18); + + System.out.println(myMovie.getInfo()); + System.out.println(mySeries.getInfo()); + System.out.println(); + + // 4. Prueba de IntList Interface + System.out.println("--- 4. IntList System (Growth Test) ---"); + + IntList arrayList = new IntArrayList(); + System.out.println("Añadiendo 12 elementos a IntArrayList..."); + for (int i = 1; i <= 12; i++) { + arrayList.add(i * 10); + } + System.out.println("Elemento en índice 11: " + arrayList.get(11)); + + IntList vector = new IntVector(); + System.out.println("Añadiendo 22 elementos a IntVector..."); + for (int i = 1; i <= 22; i++) { + vector.add(i * 5); + } + System.out.println("Elemento en índice 21: " + vector.get(21)); + } +} \ No newline at end of file diff --git a/lab-solution3/src/main/java/com/ironhack/BigDecimalOperations.java b/lab-solution3/src/main/java/com/ironhack/BigDecimalOperations.java new file mode 100644 index 0000000..292eeef --- /dev/null +++ b/lab-solution3/src/main/java/com/ironhack/BigDecimalOperations.java @@ -0,0 +1,26 @@ +package com.ironhack; + +import java.math.BigDecimal; +import java.math.RoundingMode; + +/** + * Operaciones de precisión con BigDecimal. + */ +public class BigDecimalOperations { + + /** + * Redondea a la centésima más cercana (2 decimales). + */ + public static double roundToHundredth(BigDecimal value) { + if (value == null) return 0.0; + return value.setScale(2, RoundingMode.HALF_UP).doubleValue(); + } + + /** + * Invierte el signo y redondea a la décima más cercana (1 decimal). + */ + public static BigDecimal inverseAndRoundToTenth(BigDecimal value) { + if (value == null) return BigDecimal.ZERO; + return value.negate().setScale(1, RoundingMode.HALF_UP); + } +} \ No newline at end of file diff --git a/lab-solution3/src/main/java/com/ironhack/Car.java b/lab-solution3/src/main/java/com/ironhack/Car.java new file mode 100644 index 0000000..28c2fe9 --- /dev/null +++ b/lab-solution3/src/main/java/com/ironhack/Car.java @@ -0,0 +1,66 @@ +package com.ironhack; + +/** + * Clase abstracta base para el inventario de coches. + */ +public abstract class Car { + private String vinNumber; + private String make; + private String model; + private int mileage; + + public Car(String vinNumber, String make, String model, int mileage) { + this.vinNumber = vinNumber; + this.make = make; + this.model = model; + this.mileage = mileage; + } + + public String getInfo() { + return String.format("VIN: %s | Marca: %s | Modelo: %s | KM: %d", + vinNumber, make, model, mileage); + } +} + +/** + * Clase Sedan. + */ +class Sedan extends Car { + public Sedan(String vinNumber, String make, String model, int mileage) { + super(vinNumber, make, model, mileage); + } +} + +/** + * Clase UtilityVehicle con tracción 4x4. + */ +class UtilityVehicle extends Car { + private boolean fourWheelDrive; + + public UtilityVehicle(String vinNumber, String make, String model, int mileage, boolean fourWheelDrive) { + super(vinNumber, make, model, mileage); + this.fourWheelDrive = fourWheelDrive; + } + + @Override + public String getInfo() { + return super.getInfo() + " | 4x4: " + (fourWheelDrive ? "Sí" : "No"); + } +} + +/** + * Clase Truck con capacidad de remolque. + */ +class Truck extends Car { + private double towingCapacity; + + public Truck(String vinNumber, String make, String model, int mileage, double towingCapacity) { + super(vinNumber, make, model, mileage); + this.towingCapacity = towingCapacity; + } + + @Override + public String getInfo() { + return super.getInfo() + " | Capacidad Remolque: " + towingCapacity + " kg"; + } +} \ No newline at end of file diff --git a/lab-solution3/src/main/java/com/ironhack/IntList.java b/lab-solution3/src/main/java/com/ironhack/IntList.java new file mode 100644 index 0000000..6d67c8d --- /dev/null +++ b/lab-solution3/src/main/java/com/ironhack/IntList.java @@ -0,0 +1,52 @@ +package com.ironhack; + +import java.util.Arrays; + +/** + * Interfaz y sus implementaciones con estrategias de crecimiento. + */ +public interface IntList { + void add(int number); + int get(int id); +} + +class IntArrayList implements IntList { + private int[] array = new int[10]; + private int size = 0; + + @Override + public void add(int number) { + if (size == array.length) { + // Crecimiento del 50% + int newCapacity = array.length + (array.length / 2); + array = Arrays.copyOf(array, newCapacity); + } + array[size++] = number; + } + + @Override + public int get(int id) { + if (id < 0 || id >= size) throw new IndexOutOfBoundsException(); + return array[id]; + } +} + +class IntVector implements IntList { + private int[] array = new int[20]; + private int size = 0; + + @Override + public void add(int number) { + if (size == array.length) { + // Crecimiento del 100% (doble) + array = Arrays.copyOf(array, array.length * 2); + } + array[size++] = number; + } + + @Override + public int get(int id) { + if (id < 0 || id >= size) throw new IndexOutOfBoundsException(); + return array[id]; + } +} \ No newline at end of file diff --git a/lab-solution3/src/main/java/com/ironhack/Video.java b/lab-solution3/src/main/java/com/ironhack/Video.java new file mode 100644 index 0000000..ef46853 --- /dev/null +++ b/lab-solution3/src/main/java/com/ironhack/Video.java @@ -0,0 +1,47 @@ +package com.ironhack; + +/** + * Clase abstracta para servicios de video. + */ +public abstract class Video { + private String title; + private int duration; + + public Video(String title, int duration) { + this.title = title; + this.duration = duration; + } + + public abstract String getInfo(); + + public String getTitle() { return title; } + public int getDuration() { return duration; } +} + +class TvSeries extends Video { + private int episodes; + + public TvSeries(String title, int duration, int episodes) { + super(title, duration); + this.episodes = episodes; + } + + @Override + public String getInfo() { + return "Serie: " + getTitle() + " | Duración: " + getDuration() + "m | Episodios: " + episodes; + } +} + +class Movie extends Video { + private double rating; + + public Movie(String title, int duration, double rating) { + super(title, duration); + this.rating = rating; + } + + @Override + public String getInfo() { + return "Película: " + getTitle() + " | Duración: " + getDuration() + "m | Rating: " + rating + "/10"; + } +} \ No newline at end of file diff --git a/lab-solution3/src/main/resources/META-INF/maven/archetype.xml b/lab-solution3/src/main/resources/META-INF/maven/archetype.xml new file mode 100644 index 0000000..563f32a --- /dev/null +++ b/lab-solution3/src/main/resources/META-INF/maven/archetype.xml @@ -0,0 +1,9 @@ + + lab-solution3 + + src/main/java/App.java + + + src/test/java/AppTest.java + + diff --git a/lab-solution3/src/main/resources/archetype-resources/pom.xml b/lab-solution3/src/main/resources/archetype-resources/pom.xml new file mode 100644 index 0000000..d984103 --- /dev/null +++ b/lab-solution3/src/main/resources/archetype-resources/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + $org.example + $lab-solution3 + $1.0-SNAPSHOT + + + junit + junit + 3.8.1 + test + + + diff --git a/lab-solution3/src/main/resources/archetype-resources/src/main/java/App.java b/lab-solution3/src/main/resources/archetype-resources/src/main/java/App.java new file mode 100644 index 0000000..1fa6a95 --- /dev/null +++ b/lab-solution3/src/main/resources/archetype-resources/src/main/java/App.java @@ -0,0 +1,13 @@ +package $org.example; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/lab-solution3/src/main/resources/archetype-resources/src/test/java/AppTest.java b/lab-solution3/src/main/resources/archetype-resources/src/test/java/AppTest.java new file mode 100644 index 0000000..65be417 --- /dev/null +++ b/lab-solution3/src/main/resources/archetype-resources/src/test/java/AppTest.java @@ -0,0 +1,38 @@ +package $org.example; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} From c8a22a0b4d97162df584c8762f8254de464a0482 Mon Sep 17 00:00:00 2001 From: David ZN Date: Mon, 13 Apr 2026 20:30:24 +0200 Subject: [PATCH 2/2] Lab3 --- .idea/.gitignore | 10 +++++ .idea/compiler.xml | 16 ++++++++ .idea/encodings.xml | 7 ++++ .idea/jarRepositories.xml | 20 +++++++++ ...b-java-interfaces-and-abstract-classes.iml | 9 +++++ .idea/misc.xml | 14 +++++++ .idea/modules.xml | 8 ++++ .idea/vcs.xml | 6 +++ .../classes/META-INF/maven/archetype.xml | 9 +++++ .../classes/archetype-resources/pom.xml | 15 +++++++ .../src/main/java/App.java | 13 ++++++ .../src/test/java/AppTest.java | 38 ++++++++++++++++++ .../com/ironhack/BigDecimalOperations.class | Bin 0 -> 924 bytes .../target/classes/com/ironhack/Car.class | Bin 0 -> 890 bytes .../classes/com/ironhack/IntArrayList.class | Bin 0 -> 822 bytes .../target/classes/com/ironhack/IntList.class | Bin 0 -> 150 bytes .../classes/com/ironhack/IntVector.class | Bin 0 -> 780 bytes .../target/classes/com/ironhack/Main.class | Bin 0 -> 3360 bytes .../target/classes/com/ironhack/Movie.class | Bin 0 -> 904 bytes .../target/classes/com/ironhack/Sedan.class | Bin 0 -> 430 bytes .../target/classes/com/ironhack/Truck.class | Bin 0 -> 897 bytes .../classes/com/ironhack/TvSeries.class | Bin 0 -> 852 bytes .../classes/com/ironhack/UtilityVehicle.class | Bin 0 -> 938 bytes .../target/classes/com/ironhack/Video.class | Bin 0 -> 607 bytes 24 files changed, 165 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/compiler.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/jarRepositories.xml create mode 100644 .idea/lab-java-interfaces-and-abstract-classes.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 lab-solution3/target/classes/META-INF/maven/archetype.xml create mode 100644 lab-solution3/target/classes/archetype-resources/pom.xml create mode 100644 lab-solution3/target/classes/archetype-resources/src/main/java/App.java create mode 100644 lab-solution3/target/classes/archetype-resources/src/test/java/AppTest.java create mode 100644 lab-solution3/target/classes/com/ironhack/BigDecimalOperations.class create mode 100644 lab-solution3/target/classes/com/ironhack/Car.class create mode 100644 lab-solution3/target/classes/com/ironhack/IntArrayList.class create mode 100644 lab-solution3/target/classes/com/ironhack/IntList.class create mode 100644 lab-solution3/target/classes/com/ironhack/IntVector.class create mode 100644 lab-solution3/target/classes/com/ironhack/Main.class create mode 100644 lab-solution3/target/classes/com/ironhack/Movie.class create mode 100644 lab-solution3/target/classes/com/ironhack/Sedan.class create mode 100644 lab-solution3/target/classes/com/ironhack/Truck.class create mode 100644 lab-solution3/target/classes/com/ironhack/TvSeries.class create mode 100644 lab-solution3/target/classes/com/ironhack/UtilityVehicle.class create mode 100644 lab-solution3/target/classes/com/ironhack/Video.class diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..ab1f416 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Ignored default folder with query files +/queries/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..f084c9f --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..36dda7f --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..712ab9d --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/lab-java-interfaces-and-abstract-classes.iml b/.idea/lab-java-interfaces-and-abstract-classes.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/lab-java-interfaces-and-abstract-classes.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..d1f2b79 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..ff55171 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/lab-solution3/target/classes/META-INF/maven/archetype.xml b/lab-solution3/target/classes/META-INF/maven/archetype.xml new file mode 100644 index 0000000..563f32a --- /dev/null +++ b/lab-solution3/target/classes/META-INF/maven/archetype.xml @@ -0,0 +1,9 @@ + + lab-solution3 + + src/main/java/App.java + + + src/test/java/AppTest.java + + diff --git a/lab-solution3/target/classes/archetype-resources/pom.xml b/lab-solution3/target/classes/archetype-resources/pom.xml new file mode 100644 index 0000000..d984103 --- /dev/null +++ b/lab-solution3/target/classes/archetype-resources/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + $org.example + $lab-solution3 + $1.0-SNAPSHOT + + + junit + junit + 3.8.1 + test + + + diff --git a/lab-solution3/target/classes/archetype-resources/src/main/java/App.java b/lab-solution3/target/classes/archetype-resources/src/main/java/App.java new file mode 100644 index 0000000..1fa6a95 --- /dev/null +++ b/lab-solution3/target/classes/archetype-resources/src/main/java/App.java @@ -0,0 +1,13 @@ +package $org.example; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/lab-solution3/target/classes/archetype-resources/src/test/java/AppTest.java b/lab-solution3/target/classes/archetype-resources/src/test/java/AppTest.java new file mode 100644 index 0000000..65be417 --- /dev/null +++ b/lab-solution3/target/classes/archetype-resources/src/test/java/AppTest.java @@ -0,0 +1,38 @@ +package $org.example; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} diff --git a/lab-solution3/target/classes/com/ironhack/BigDecimalOperations.class b/lab-solution3/target/classes/com/ironhack/BigDecimalOperations.class new file mode 100644 index 0000000000000000000000000000000000000000..b419ff8d50d5526c37a774812b03895889543b58 GIT binary patch literal 924 zcmaizTW=CU6vzL=ZGmnJB2uVVtd|9qjfrnHCRJ?OxD`{7hrTq!GJ&bfY_sh0wOadt zi4VS-_@Rtv7ZT7w+=nweXU_SZ+sv=u-+usjg+>-J#5E*zB#~mspYsVf9j*put9LGJ zpCR>HD(Syrh#R$T25Dq8WOZynXDCJHBkm8)6E{$OsRqYxUodEg`_{qP=T8h}YqiZ@ z7F)<^$m_U)0z+|O_Erv>!j>cMFr>%AZ`<4<=1b#f9jmr9N_akVBxax!bnX4|K9kNL$sW=X1v@Wx_a^`rTA+>THotg#NZItD|w z?FODL4rEwgWmP{K;RQey_vuE4UmTPdQY5RiGihbCChOn8zS2(&4@ri{KnA-c^_c-4 z;c=vUf~TYjosS|IP^kYza_h35yoNT#<`g$C=`QmfK%-C1|fVb)4l$XH8zrkrjJ|~wLUi<-`#L`Cq literal 0 HcmV?d00001 diff --git a/lab-solution3/target/classes/com/ironhack/Car.class b/lab-solution3/target/classes/com/ironhack/Car.class new file mode 100644 index 0000000000000000000000000000000000000000..bc52eef7e7f7d3dec9e98756b0489bc1fedcd3e8 GIT binary patch literal 890 zcmZuv%Wl&^6g`tTaT1(&T4;DBKp=J>-gHBQ*i=HYNZW<0NKsc4capmGLvo$0Snx?8 z5m6z*2k=pdJC0EURF-@nbMBop_uQYqzWo5O53_^}vMLk}Ipi5?mwdrZj|VgJWO6B- zm?8hh4cz!GL$gJme8Wap4BXbAKYpZwznS*>U6s zvw>_-(NLAuiqEfvOw=_rWFqH>=fabjmWB;%GN``m2|g1H%qrjkgFdp34?4Z;&WFws zj~xETmxW;(ygwr6yo5F$s(7T~F`h8gZ>d;8EM}6Qy5QbioJ<)u`Fo^F zp&N+R;7|F)qfBEMI@}xa$dz%LRN@QwTAux@+Yfoq}J& z58#d7dt)NOsKI+bl<_%b&V-9|`u6mF-rw`Sr@#MvKLv0LH*FZmSuh=pAulksFW<;| zS4O+_=JtLVqyqVSDpKhKfn2rL8pj2UTd*Az;0P=P@j+cBakM9c*L6QiA0~-BYN$SS zV^YTgM%&k_2?vvy5-|JfT__-Y8zoFzm~k+R@;~w*Ro!}4q)&1X_l}x70#>!{`?a=j zVP0VMzePXlgon*R+T3{*528;0$zc%oQWZxw=5$xCz|47vXXecHxI-6{4HbpY2M60> z@ZN}k5wcj<}GFCW60|JZO4LyI}prMD# zXO4>($gfL`9%p$#$vc7YrtF{gF)S~4jN+F}v&?-W(-dJc(pPhdXAbpL;WAlZd<9pB z72mVEX58_p;W#*(ZGVnl+(F2*l i#>fCv3$&4efeC0TD+3z?$aHoF4xk7l11CtFfeQdgOdgv6 literal 0 HcmV?d00001 diff --git a/lab-solution3/target/classes/com/ironhack/IntVector.class b/lab-solution3/target/classes/com/ironhack/IntVector.class new file mode 100644 index 0000000000000000000000000000000000000000..6ff4eeb3a14c4a65793aea9b5179643dec4a5a06 GIT binary patch literal 780 zcmZ9KPjAye5XIlxPE8%B4Ixbnh5~JY#DW?SHxLqkB};)EiXxQ=3CD4pEvX$j4r=%+ zT;R?HiK+-tx$~hAZ{1K(4_?oX_s#FktbhIfb_n1OTnid>6NZffW(3MR!P~$a1o5`l z>h45gCNOhP#xlDvpw}DiS)9VG3Cl(iwm>aRc0HLUaX$#(cz&F!naVt8530-3#k3Yjx#y%9w_06*f1GRT3Z5Uz2p0hj&EW~VD+Cr zKkh|)t#Q`cdYFvk-ss6*7!5O-#1uP9L3$T*Z|!Ejnf-;NZU zr+m&uQekZ*<1~z(O2xK0J!NlQb%;wGng)S$Ts1Xo-j=3j$hXdim&LE=89mO=0TuTE z!Yx;SSo<(teIKRIx#j}bxm>dX1FNjGhGph#>Z!s-vcUKE~!OsvrrOvBeCDoki8lOI;7aRuvgNA81hZtI; zv8ez=1O!MS1QBXbpIoRodYQDWIocE%b%6}4>zHkr&ZJ}OYB?j~9tI^Ik1NT9GHA>U z>jk5%mXz^X-BumLGAsP0gfQ9#$RTV%2g8OnkQjtnj$1OxRMfNOk|sljIg^P^3E0Tc z;chLfPO)p*nuyKhR8OKi)svDC!M)t|4gp&kHZ6Pa0S(R>B~7;_Y(cAt?F{j8+n6y- zwUkyo1m#&}Lf0%)(^bt=;rn)kuoE95i|XvGZfXRv7T;Aa)GcQu z+>hM?_Jj~cjA2K?Dt8&SWfs-K=@m{bN05?YTXUwCvmT*uTi2W-LucJ)Qz$aAVNP)$ zr}zNF*648TKM>i1Lb2mAhOmrXUNr~toIo^{>^!AD9W$0ZF zp{GG1%$oDM?HClng@$lyx3BRE@nU&D4u;T=G{Z)N>sRyvQ=9O7%~9OR&&1vQ^xSH8 zpF95`cmBgoY4K`5v)Z+#w1{}9!4uEF|JIW*26%D%MGP@)=l#%~P=-|7jf3e}_JZQI z6K@9rM;PRWyie+yYKnN6GBGeXl=Q-!r7-8L1qTpN=tXX<%{OF-nHBFr^obLP-}fL3EzTpXlv7*uP&yj=}e+uFr~?qV>mZ z8Yv~-N#l5ev&l1L{#Q09IGvNtLCM*3h0`KF%EK`6Sbu-Nh>sD65zE#@s0?i*@nmYh z|L{8(&eG_EgcHy?lc)a=Cd08Q2}KwJPK9uqw??=jM3hs?#EkA_&8IC9G#+>IY#&G{ zQ--EniZ>T&VkwilJ#Q3rFX2|RZ)4WHK@t80Lm+Dw^jSVD{fBp4=6_ctn3&_9%+my0 zBc@qmDd3YdDI2)u=E(I5s8Mm2syX_wZJlw7N=~mhG0)ZWG@Ke}(Ut+*Ru}j_3Fr9S{USqb;Pwqw zGiZQXO0rwgOM00)-l`}nw{d4fB9REo zR*PbNiM#i0hTSXN>t5xar%k?z`0ib(b`wM0SUMrQ{7(TJ!MvXvD6KULPkGq~=ZoS8{uY3ZZd> zTdTB1;lBPpee>6}h#$~*s4ic{59wC`Kf;e` zh%1_B3Z&zRMz;q2-+D{0bzA9!2go|y@BsFw)sa$4eOS6sAUBpBX! z6&;;YBq-Lwf&}*W6=2`tU{W~J2*wMc6}%AMz+N}$A{|yTUAT8r!uQcLfqQTe>oG_d zcf1)aE#d+{E&;`g`@f5tZa1>5mgLi-2ZOIxsu zwPQEiial%(qAZSmEQL5bgajKw7du9W+LQF0rYqe!y2`zP6uU^*xL44}uF>-?^s_%A z?H22KtYcZS_ZnV@#4eF_E(Lj!;u?7a$m}=x3Erd+v>8eq#Cuyn~-ZAilrFFGv!J8Un=Y2yT)j;TG9R!S?}C n2?}^uKxFAt6ySZH6F{HmsmZziT6bC z*6YY_m@t$!Wh}FY40BHVjW`fqB;ua8ouxAFHGQ`;1rt*SERJdL<2{}x2Qs7{smLgu zfwc^j8Rm~SdNhzxH%u+e;FJP$nj!DF9TR65rnkcA=tD4w#70deoaLCqJT(>j`(fN= zXq*7doxnOC(Xit}EGuq8jrLHP%{jYSHhIwnNYFL9~ zMX!=2qdOsXPvFCExgCbWD+M#R|@Ow*y+{mTmT84Tjdk6)9TtnFlw2H_K_rdnEJD@qK+r%7T27+De$ zc{%cn@W`%G^b&cB0A63N9)i`~uP{F8tTnP_It7+cf6reH@0fXUh*{enqEa8?9KG!7$iFniqJ3TYUtkQeWYc+N bh?^g&dkzXwNl$8MBwYLJVWt>``(+GH@oxoz1{%m<1~PSnh&=H4|PH(EsIE*QqM#>kA}h!>W@mR>WT1h8NZ8_ zh;pH`D5;Fn+2B9Q=xXevK?whNCvqw@!5x-UNodDP%a>&_k>*uQa#q5)OhrBxMp^zV zy46fA2;F$!YCveNl-_yR_Pw|AutLn)+ADZwPVftrOOdfcBSMgrOOwiH)(8#$`n`3) z1$%Bwzg{3)%pRnbhYsbn#Kq*A)!9lhQ!C)Wu;g41J|X-#2=-J zLZXR3z#nCtyYOPSF}}<_cQWV9nS1Bg@9#eWJjH$q8Dw>626D&~Oegeh8HK@_aK?5= zM1=f-3}k#rXw~{}#ksIO5sd8PIFiAr{XdyreNaRJMI9vrD=-Mvzq*`6Q)f&l$KeN- z?1+hQWc-mpT^(h@#>J-3r_vj`Q3}lUy~hhIN8Ia^qg`CM2xY>S>RP zx?x}w*LgfKnYh7_(7a^4Gk7~dpC7kmeRka^luZkYTbXS zSZv-Jj}+scfo)~J5QmG`CA2T`lpZIY>2>P^g4PL#E}_zwf%|gmpSsbBIQ2MF?T3!= z1|pK`zD#QInS9R=)=z&kAFtJ(Qh>#4k>Ncgj=UI*GK_P$&+!4@V#Ye3W@Bf!xvtGYjm_LQ=wFh`haAhu za%`c9HYzy4BfcFX&(TB;bv_kpV22eI+GV6VnrJdoToZe+p(RLp$Z;j_(9*#X*C^)p y53IhPqtck8I>WW<4GxX3&}Z1H-eEk$-OpT>fijg(D9;iz#)7^yLwKB2J^2H`ea2M) literal 0 HcmV?d00001 diff --git a/lab-solution3/target/classes/com/ironhack/TvSeries.class b/lab-solution3/target/classes/com/ironhack/TvSeries.class new file mode 100644 index 0000000000000000000000000000000000000000..6ce69658b12d8b69d31020161cf075ada274f30c GIT binary patch literal 852 zcmZuw%Wl(95IvKZUB^wqv<;;x4R6P#HSYyMEO=D16tPJZsS+DExuh2oJ93<^_$UyN zN+7Xe$44RNUI!#d7QUYG+&OdR%=qW8uipVYz#|Jeuq=%`ol09`0X^2(V!VLx+^fTV!*OdhE3S`2cvV^7Ks!Sf+@yw z68Du!fq@F4`ajyUsT}r2Vqq2M6r=NmyxZuSxIi#8&f~fYZrIpFm6?U(v55MF{UyvA z3uNc;O^XR{*|>ylW;GCLN2WtTSa%mwnkIG#mHPYoi)j+}QqK6RG_9$3l7{c>vYc(jheo#WWMcSx}FIX8&)e2KOCA zZ+Jbdc05gb;!vuhmfo2IHCWcii+a%>mj@wvy|YvfVjx9#oK&OqMI7Z@M) zt=oK7I0|f`#B(ZR8~f~e*?k)~&uM7Hk$ literal 0 HcmV?d00001 diff --git a/lab-solution3/target/classes/com/ironhack/UtilityVehicle.class b/lab-solution3/target/classes/com/ironhack/UtilityVehicle.class new file mode 100644 index 0000000000000000000000000000000000000000..95a10ad6350a0deac9ab5c606939cd5168fa7082 GIT binary patch literal 938 zcma)4%Wl&^6g}hEu@jsJrfGpv2ye$}Y93iNs0)gaBBk8~g6IZK6E_*^*pYD}koXb4 zfE5x*&`2P$VaG=ScbsfUD#YgczR#KC`}5b=?*QtkXQ3daLp7lx%~0%yLsvv$FyP%| zcb7*D=?5YZ@eaeb-FnF<-1T|TciV9!f_~$FGR;aS0|OZySrcbqGOYiF@-!B{h~IR) zf#~`kL;ffnN6!YH=RbRV1r1se|#`- zg+bX5CBjt`*CZJu4rj74G)}=-rnj7F9#lFE>TcL0T?#D`c>Ckwp%*>jhf+GL6?VDb z;gOK>JgLS5@rq%i^$*n>44H`tX3ONBMXjkp9r9zs(1rx=le9zOd%Q3IPm>|nj_G3d z_$UF@ahGmsaR)=TO~1D5J*G*LgU)M9_MlAXq0l{&V)8)9Q^?nFo$L*YVtJhOEjrcB zT1lOPIVJ52^iN6WO|p5U$X1Yng956!MbXY|2Df2TMAKAvXruJ1*GOw8{9 literal 0 HcmV?d00001 diff --git a/lab-solution3/target/classes/com/ironhack/Video.class b/lab-solution3/target/classes/com/ironhack/Video.class new file mode 100644 index 0000000000000000000000000000000000000000..ccdb3f787ceffb1c2c8c35d9a322c8b346514362 GIT binary patch literal 607 zcmZutT}#4X6n@T}PUlQrW?vR{rwiImcSbiwAV^&(gD&S>`kHRAX1}V7f+XmoAJC7A z&bvuP#^604JI}{CAD?gU08X&4LqSG^Y9Naop)zqFTzl#UBl~(V@x7RkI~9S5&j^`j z%PAm_f(G3{5eC8Z!kI0iFc`buo$ZLB9}=>$h^IdP?EaAT;z$IewuG-4D5FBi59g5^ zi!dNihfr^>j(1uPK|K$L%vSD-z`vT$27c6c2PuE(xl_lDgshiMH6Dw5Lan>%tWD5H ze%uLe*<`KRTGeAyJkU?=7dgH7w#dt~Nxc`&BhSASQeRK@J(f$VhrF1=7ghM<%On|Z z$x#Jg1XX@bu5RSHIhL(gkae_xW;GTlJtu&5eoY1dI=@8}m}m_p)VOny!mxolS4@z| zP?AX@MI~%vi)+F*$5hVdC}*V!Z literal 0 HcmV?d00001