diff --git a/Documentos/datelapse.html b/Documentos/datelapse.html
new file mode 100644
index 0000000..37f540d
--- /dev/null
+++ b/Documentos/datelapse.html
@@ -0,0 +1,332 @@
+
+ datelapse
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
package ar.edu.unlp.info.oo1.Ejercicio_14_Intervalo_de_tiempo;
+
+import java.time.LocalDate;
+import java.time.temporal.ChronoUnit;
+
+public class DateLapse {
+ private LocalDate from;
+ private LocalDate to;
+
+ public DateLapse(LocalDate from, LocalDate to) {
+ this.from=from;
+ this.to=to;
+ }
+
+ public LocalDate getFrom() {
+ return this.from;
+ }
+
+ public LocalDate getTo() {
+ return this.to;
+ }
+
+ public int sizeInDays() {
+ return (int) this.getFrom().until(getTo(),ChronoUnit.DAYS);
+ }
+
+ public boolean cumpleIncio(LocalDate other) {
+ if(other.isAfter(getFrom()) || other.equals(getFrom()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean cumpleFin(LocalDate other) {
+ if(other.isBefore(getTo()) || other.equals(getTo()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean includesDate(LocalDate other) {
+ if(this.cumpleIncio(other) && this.cumpleFin(other))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean overlaps (DateLapse periodo) {
+ if ( this.cumpleIncio(periodo.getFrom()) && this.cumpleFin(periodo.getTo()) )
+ return true;
+ else
+ return false;
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Documentos/datelapse.md b/Documentos/datelapse.md
new file mode 100644
index 0000000..c4b4540
--- /dev/null
+++ b/Documentos/datelapse.md
@@ -0,0 +1,57 @@
+```java
+package ar.edu.unlp.info.oo1.Ejercicio_14_Intervalo_de_tiempo;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.time.LocalDate;
+import java.time.Month;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+public class DateLapseTest {
+
+ DateLapse periodo;
+ LocalDate inicio = LocalDate.of(2000, Month.JANUARY, 1);
+ LocalDate fin = LocalDate.of(2000, Month.JANUARY, 30);
+
+ DateLapse periodo2;
+ LocalDate inicio2 = LocalDate.of(2000, Month.JANUARY, 5);
+ LocalDate fin2 = LocalDate.of(2000, Month.JANUARY, 10);
+
+ DateLapse fecha3;
+ LocalDate inicio3 = LocalDate.of(2000, Month.JANUARY, 10);
+ LocalDate fin3 = LocalDate.of(2000, Month.JANUARY, 5);
+
+ @BeforeEach
+ void setUp() throws Exception {
+ periodo = new DateLapse(inicio, fin);
+ periodo2 = new DateLapse(inicio2, fin2);
+ }
+
+ @Test
+ public void testDias() {
+ assertEquals(1, periodo.getFrom().getDayOfMonth());
+ assertEquals(30, ((DateLapse) periodo).getTo().getDayOfMonth());
+ }
+
+ @Test
+ public void testCantidadDias() {
+ assertEquals(29, periodo.sizeInDays());
+ assertEquals(5, periodo2.sizeInDays());
+ }
+
+ @Test
+ public void testContieneFecha() {
+ assertTrue(periodo.includesDate(inicio2));
+ assertTrue(periodo.includesDate(fin2));
+ assertTrue(periodo.includesDate(inicio));// incluye los valores borde
+ assertTrue(periodo.includesDate(fin));
+ }
+ @Test
+ public void testSeSuperpone() {
+ assertTrue(periodo.overlaps(periodo2));
+ }
+
+```
\ No newline at end of file
diff --git a/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapse.java b/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapse.java
index 6440ec2..7f26157 100644
--- a/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapse.java
+++ b/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapse.java
@@ -24,8 +24,29 @@ public int sizeInDays() {
return (int) this.getFrom().until(getTo(),ChronoUnit.DAYS);
}
+ public boolean cumpleIncio(LocalDate other) {
+ if(other.isAfter(getFrom()) || other.equals(getFrom()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean cumpleFin(LocalDate other) {
+ if(other.isBefore(getTo()) || other.equals(getTo()))
+ return true;
+ else
+ return false;
+ }
+
public boolean includesDate(LocalDate other) {
- if(other.isAfter(getFrom()) && other.isBefore(getTo()))
+ if(this.cumpleIncio(other) && this.cumpleFin(other))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean overlaps (DateLapse periodo) {
+ if ( this.cumpleIncio(periodo.getFrom()) && this.cumpleFin(periodo.getTo()) )
return true;
else
return false;
diff --git a/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapseTest.java b/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapseTest.java
index 324fe12..5d258c6 100644
--- a/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapseTest.java
+++ b/Practica/Ejercicio 14 Intervalo de tiempo/Ejercicio-14-Intervalo-de-tiempo/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_14_Intervalo_de_tiempo/DateLapseTest.java
@@ -11,36 +11,45 @@
public class DateLapseTest {
- DateLapse fecha;
- DateLapse fecha2;
+ DateLapse periodo;
LocalDate inicio = LocalDate.of(2000, Month.JANUARY, 1);
LocalDate fin = LocalDate.of(2000, Month.JANUARY, 30);
+
+ DateLapse periodo2;
LocalDate inicio2 = LocalDate.of(2000, Month.JANUARY, 5);
LocalDate fin2 = LocalDate.of(2000, Month.JANUARY, 10);
+ DateLapse fecha3;
+ LocalDate inicio3 = LocalDate.of(2000, Month.JANUARY, 10);
+ LocalDate fin3 = LocalDate.of(2000, Month.JANUARY, 5);
+
@BeforeEach
void setUp() throws Exception {
- fecha = new DateLapse(inicio, fin);
- fecha2 = new DateLapse(inicio2, fin2);
+ periodo = new DateLapse(inicio, fin);
+ periodo2 = new DateLapse(inicio2, fin2);
}
@Test
public void testDias() {
- assertEquals(1, fecha.getFrom().getDayOfMonth());
- assertEquals(30, ((DateLapse) fecha).getTo().getDayOfMonth());
+ assertEquals(1, periodo.getFrom().getDayOfMonth());
+ assertEquals(30, ((DateLapse) periodo).getTo().getDayOfMonth());
}
@Test
public void testCantidadDias() {
- assertEquals(29, fecha.sizeInDays());
- assertEquals(5, fecha2.sizeInDays());
+ assertEquals(29, periodo.sizeInDays());
+ assertEquals(5, periodo2.sizeInDays());
}
@Test
public void testContieneFecha() {
- assertTrue(fecha.includesDate(inicio2));
- assertTrue(fecha.includesDate(fin2));
- assertFalse(fecha.includesDate(inicio));// No incluye los valores borde
- assertFalse(fecha.includesDate(fin));
+ assertTrue(periodo.includesDate(inicio2));
+ assertTrue(periodo.includesDate(fin2));
+ assertTrue(periodo.includesDate(inicio));// incluye los valores borde
+ assertTrue(periodo.includesDate(fin));
+ }
+ @Test
+ public void testSeSuperpone() {
+ assertTrue(periodo.overlaps(periodo2));
}
}
\ No newline at end of file
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/DateLapse.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/DateLapse.java
new file mode 100644
index 0000000..5246e4e
--- /dev/null
+++ b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/DateLapse.java
@@ -0,0 +1,54 @@
+package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
+
+import java.time.LocalDate;
+import java.time.temporal.ChronoUnit;
+
+public class DateLapse {
+ private LocalDate from;
+ private LocalDate to;
+
+ public DateLapse(LocalDate from, LocalDate to) {
+ this.from=from;
+ this.to=to;
+ }
+
+ public LocalDate getFrom() {
+ return this.from;
+ }
+
+ public LocalDate getTo() {
+ return this.to;
+ }
+
+ public int sizeInDays() {
+ return (int) this.getFrom().until(getTo(),ChronoUnit.DAYS);
+ }
+
+ public boolean cumpleIncio(LocalDate other) {
+ if(other.isAfter(getFrom()) || other.equals(getFrom()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean cumpleFin(LocalDate other) {
+ if(other.isBefore(getTo()) || other.equals(getTo()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean includesDate(LocalDate other) {
+ if(this.cumpleIncio(other) && this.cumpleFin(other))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean overlaps (DateLapse periodo) {
+ if ( this.cumpleIncio(periodo.getFrom()) && this.cumpleFin(periodo.getTo()) )
+ return true;
+ else
+ return false;
+ }
+}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Persona.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Persona.java
deleted file mode 100644
index 24a78bd..0000000
--- a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Persona.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
-
-/**
- * De esta forma crearemos las clases del ejercicio
- *
- */
-public class Persona {
-
- private String nombre;
- private String apellido;
- private String dni;
-
-
- public String getNombre() {
- return nombre;
- }
- public void setNombre(String nombre) {
- this.nombre = nombre;
- }
- public String getApellido() {
- return apellido;
- }
- public void setApellido(String apellido) {
- this.apellido = apellido;
- }
- public String getDni() {
- return dni;
- }
- public void setDni(String dni) {
- this.dni = dni;
- }
-
- /**
- * Retorna el nombre completo de la persona de la forma apellido, nombre
- * @return
- */
- public String getNombreCompleto() {
- return this.getApellido() + ", " + this.getNombre();
- }
-
-}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Propiedad.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Propiedad.java
new file mode 100644
index 0000000..49832f2
--- /dev/null
+++ b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Propiedad.java
@@ -0,0 +1,40 @@
+package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
+
+import java.time.LocalDate;
+import java.util.*;
+
+public class Propiedad {
+ private String nombre;
+ private String descripcion;
+ private double precioNoche;
+ private String direccion;
+ private Usuario propietario;
+ private List reservas;
+
+ public Propiedad(String nombre, String descripcion, double precioNoche, String direccion, Usuario propietario) {
+ this.nombre=nombre;
+ this.descripcion=descripcion;
+ this.precioNoche=precioNoche;
+ this.propietario=propietario;
+ reservas = new ArrayList<>();
+ }
+
+ public boolean estaDisponible(DateLapse periodo) {
+ return reservas.stream()
+ .noneMatch(reserva->reserva.cumple(periodo));
+ }
+ public void agregarReserva(Reserva reserva) {
+ reservas.add(reserva);
+ }
+
+
+ public void eliminarReserva(Reserva reserva) {
+ this.reservas.remove(reserva);
+ }
+
+
+ public double getPrecioNoche() {
+ return this.precioNoche;
+ }
+
+}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Reserva.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Reserva.java
new file mode 100644
index 0000000..be248d0
--- /dev/null
+++ b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Reserva.java
@@ -0,0 +1,29 @@
+package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
+
+public class Reserva {
+ private Propiedad propiedad;
+ private DateLapse periodo;
+ private Usuario inquilino;
+
+ public Reserva(Propiedad propiedad, DateLapse periodo, Usuario inquilino) {
+ this.propiedad=propiedad;
+ this.periodo=periodo;
+ this.inquilino=inquilino;
+ }
+
+ public DateLapse getPeriodo() {
+ return this.periodo;
+ }
+
+ public boolean cumple(DateLapse periodo) {
+ return this.periodo.overlaps(periodo);
+ }
+
+ public double calcularPrecio() {
+ return this.propiedad.getPrecioNoche() * this.periodo.sizeInDays();
+ }
+
+ public void eliminarReserva() {
+
+ }
+}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Sistema.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Sistema.java
new file mode 100644
index 0000000..9661507
--- /dev/null
+++ b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Sistema.java
@@ -0,0 +1,48 @@
+package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
+
+import java.time.LocalDate;
+import java.util.*;
+
+public class Sistema {
+ private List usuarios;
+
+ public Usuario registrarUsuario(Usuario usuario) {
+ usuarios.add(usuario);
+ return usuario;
+ }
+
+ public Propiedad registrarPropiedad(Propiedad propiedad, Usuario usuario) {
+ usuario.agregarPropiedad(propiedad);
+ return propiedad;
+ }
+
+ public List PropiedadesDisponibles(DateLapse periodo){
+ List disponibles = new ArrayList<>();
+ for (Usuario usuario:this.usuarios) {
+ disponibles.addAll(usuario.propiedadesDisponibles(periodo));
+ }
+ return disponibles;
+ }
+
+ public Reserva hacerReserva(Propiedad propiedad, DateLapse periodo, Usuario inquilino) {
+ if (propiedad.estaDisponible(periodo)) {
+ Reserva reserva = new Reserva(propiedad, periodo, inquilino);
+ propiedad.agregarReserva(reserva);
+ inquilino.agregarReserva(reserva);
+ return reserva;
+ }
+ return null;
+ }
+
+ public double calcularPrecioReserva(Reserva reserva) {
+ return reserva.calcularPrecio();
+ }
+
+ public void eliminarReserva(Reserva reserva) {//Me estanque aca
+ if (reserva.getPeriodo().getFrom().isAfter(LocalDate.now())) {
+
+ }
+ }
+
+
+}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Usuario.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Usuario.java
new file mode 100644
index 0000000..cec0ba0
--- /dev/null
+++ b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/Usuario.java
@@ -0,0 +1,42 @@
+package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
+import java.util.*;
+import java.util.stream.Collectors;
+
+public class Usuario {
+ private String nombre;
+ private String direccion;
+ private String dni;
+ private List propiedades;
+ private List reservas;
+
+ public Usuario (String nombre, String direccion, String dni) {
+ this.nombre=nombre;
+ this.direccion=direccion;
+ this.dni=dni;
+ }
+
+ public void agregarPropiedad(Propiedad propiedad) {
+ this.propiedades.add(propiedad);
+ }
+
+ public void agregarReserva(Reserva reserva) {
+ this.reservas.add(reserva);
+ }
+
+ public List propiedadesDisponibles(DateLapse Periodo){
+ return this.propiedades.stream()
+ .filter(propiedad -> propiedad.estaDisponible(Periodo))
+ .collect(Collectors.toList());
+ }
+
+ public List obtenerReservas(){
+ return this.reservas;
+ }
+
+ public void eliminarReserva(Reserva reserva) {
+ this.reservas.remove(reserva);
+ }
+
+
+
+}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/PersonaTest.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/PersonaTest.java
deleted file mode 100644
index 771c876..0000000
--- a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/PersonaTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
-/**
- * Aca escribiremos los test de unidad para cada clase
- *
- */
-public class PersonaTest {
-
- Persona james, guido;
-
- @BeforeEach
- void setUp() throws Exception {
- james = new Persona();
- guido = new Persona();
- james.setApellido("Glosing");
- james.setNombre("James");
- guido.setApellido("van Rossum");
- guido.setNombre("Guido");
-
- }
-
- @Test
- public void testNombreCompleto() {
- assertEquals("Glosing, James", james.getNombreCompleto());
- assertEquals("van Rossum, Guido", guido.getNombreCompleto());
- }
-}
diff --git a/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/UsuarioTest.java b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/UsuarioTest.java
new file mode 100644
index 0000000..d13591a
--- /dev/null
+++ b/Practica/Ejercicio 15 Alquiler de propiedades/Ejercicio-15-Alquiler-de-propiedades/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_15_Alquiler_de_propiedades/UsuarioTest.java
@@ -0,0 +1,40 @@
+package ar.edu.unlp.info.oo1.Ejercicio_15_Alquiler_de_propiedades;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+import java.time.LocalDate;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+
+public class UsuarioTest {
+
+ DateLapse periodo;
+ LocalDate inicio= LocalDate.of(10, 2, 10);;
+ LocalDate fin= LocalDate.of(10, 3, 10);;
+
+ Usuario fabian;
+ Propiedad casa;
+ Propiedad hotel;
+
+ Sistema sistema;
+
+
+ @BeforeEach
+ void setUp() throws Exception {
+ sistema = new Sistema();
+ fabian = new Usuario("Fabian", "Los Hornos", "777");
+ sistema.registrarUsuario(fabian);
+ periodo = new DateLapse(inicio,fin);
+
+
+ casa = new Propiedad("Mansion", "Grande", 20.0, "Gonet", fabian);
+ hotel = new Propiedad("5 Estrellas", "Muchos pisos", 10.0, "Los Hornos", fabian);
+ }
+
+ @Test
+ public void testPropiedades() {
+
+ }
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/pom.xml b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/pom.xml
index f04d62b..c8f8596 100644
--- a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/pom.xml
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/pom.xml
@@ -31,6 +31,11 @@
test
+
+ ar.edu.unlp.info.oo1
+ Ejercicio-10-Job-Scheduler
+ 1.0.0
+
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Cliente.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Cliente.java
new file mode 100644
index 0000000..44bc352
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Cliente.java
@@ -0,0 +1,47 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.util.*;
+
+public abstract class Cliente {
+ private String nombre;
+ private String direccion;
+ private String numero;
+ private List llamadas;
+
+ public Cliente(String nombre, String direccion) {
+ this.nombre=nombre;
+ this.direccion=direccion;
+ this.numero = "";
+ this.llamadas = new ArrayList();
+ }
+
+ public void registrarNumero(String numero) {
+ this.numero = numero;
+ }
+
+ public void registrarLlamada(Llamada llamada) {
+ this.llamadas.add(llamada);
+ }
+
+
+ public double montoTotal(LocalDate fecha1, LocalDate fecha2) {
+ double total = this.llamadas.stream()
+ .filter(llamada -> llamada.cumple(fecha1, fecha2))
+ .mapToDouble(llamada -> llamada.calcularCosto())
+ .sum();
+
+ return total - (total * getDescuento());
+ }
+
+ public Factura facturarLlamadas(LocalDate fecha1, LocalDate fecha2) {
+ double total = this.montoTotal(fecha1, fecha2);
+ return new Factura(this, LocalDate.now(), fecha1,fecha2,total);
+ }
+
+ abstract public double getDescuento();
+
+ public List getLlamadas(){
+ return this.llamadas;
+ }
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/DateLapse.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/DateLapse.java
new file mode 100644
index 0000000..affe9b5
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/DateLapse.java
@@ -0,0 +1,54 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.time.temporal.ChronoUnit;
+
+public class DateLapse {
+ private LocalDate from;
+ private LocalDate to;
+
+ public DateLapse(LocalDate from, LocalDate to) {
+ this.from=from;
+ this.to=to;
+ }
+
+ public LocalDate getFrom() {
+ return this.from;
+ }
+
+ public LocalDate getTo() {
+ return this.to;
+ }
+
+ public int sizeInDays() {
+ return (int) this.getFrom().until(getTo(),ChronoUnit.DAYS);
+ }
+
+ public boolean cumpleIncio(LocalDate other) {
+ if(other.isAfter(getFrom()) || other.equals(getFrom()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean cumpleFin(LocalDate other) {
+ if(other.isBefore(getTo()) || other.equals(getTo()))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean includesDate(LocalDate other) {
+ if(this.cumpleIncio(other) && this.cumpleFin(other))
+ return true;
+ else
+ return false;
+ }
+
+ public boolean overlaps (DateLapse periodo) {
+ if ( this.cumpleIncio(periodo.getFrom()) && this.cumpleFin(periodo.getTo()) )
+ return true;
+ else
+ return false;
+ }
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Factura.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Factura.java
new file mode 100644
index 0000000..ccd0d19
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Factura.java
@@ -0,0 +1,19 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+
+public class Factura {
+ private Cliente cliente;
+ private LocalDate fechaFacturacion;
+ private LocalDate fechaInicio;
+ private LocalDate fechaFin;
+ private double montoTotal;
+
+ public Factura(Cliente cliente, LocalDate fechaFacturacion, LocalDate fechaInicio, LocalDate fechaFin, double montoTotal) {
+ this.cliente=cliente;
+ this.fechaFacturacion=fechaFacturacion;
+ this.fechaFacturacion=fechaInicio;
+ this.fechaFin=fechaFin;
+ this.montoTotal=montoTotal;
+ }
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Fisico.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Fisico.java
new file mode 100644
index 0000000..cd7a454
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Fisico.java
@@ -0,0 +1,20 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.util.ArrayList;
+
+public class Fisico extends Cliente{
+ private String dni;
+
+ public Fisico(String nombre, String direccion, String dni) {
+ super(nombre, direccion);
+ this.dni=dni;
+
+ }
+
+ @Override
+ public double getDescuento() {
+ return 0;
+ }
+
+
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Internacional.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Internacional.java
new file mode 100644
index 0000000..4181c3c
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Internacional.java
@@ -0,0 +1,27 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.time.LocalTime;
+
+public class Internacional extends Llamada{
+ private String origen;
+ private String destino;
+
+ public Internacional(LocalDate fecha, LocalTime hora, double duracion, String llama, String recibe, String origen, String destino) {
+ super(fecha, hora, duracion, llama, recibe);
+ this.origen=origen;
+ this.destino=destino;
+ }
+
+ @Override
+ public double calcularCosto() {
+ LocalTime ocho = LocalTime.of(8, 0);
+ LocalTime veinte = LocalTime.of(20, 0);
+
+ if (super.getHora().isAfter(ocho) && super.getHora().isBefore(veinte)) {
+ return super.getDuracion() * 4;
+ }
+ return super.getDuracion() * 3;
+ }
+
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Interurbana.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Interurbana.java
new file mode 100644
index 0000000..9797995
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Interurbana.java
@@ -0,0 +1,26 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.time.LocalTime;
+
+public class Interurbana extends Llamada{
+ private Integer distancia;
+
+ public Interurbana(LocalDate fecha, LocalTime hora, double duracion, String llama, String recibe, Integer distancia) {
+ super(fecha, hora, duracion, llama, recibe);
+ this.distancia=distancia;
+ }
+
+ @Override
+ public double calcularCosto() {
+
+ if (this.distancia<100) {
+ return 5 * 2;
+ }
+ if (this.distancia>100 && this.distancia<500) {
+ return 5 * 2.5;
+ }
+ return 5 * 3;
+ }
+
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Juridica.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Juridica.java
new file mode 100644
index 0000000..f6bb28d
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Juridica.java
@@ -0,0 +1,18 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+public class Juridica extends Cliente{
+ private String cuit;
+ private String tipo;
+
+ public Juridica(String nombre, String direccion, String cuit, String tipo) {
+ super(nombre, direccion);
+ this.cuit=cuit;
+ this.tipo=tipo;
+ }
+
+ @Override
+ public double getDescuento() {
+ return 0.1;
+ }
+
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Llamada.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Llamada.java
new file mode 100644
index 0000000..a598d7f
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Llamada.java
@@ -0,0 +1,37 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.time.LocalTime;
+
+public abstract class Llamada {
+ private LocalDate fecha;
+ private LocalTime hora;
+ private Double duracion;
+ private String llama;
+ private String recibe;
+
+ public Llamada(LocalDate fecha,LocalTime hora, Double duracion, String llama, String recibe) {
+ this.fecha=fecha;
+ this.hora=hora;
+ this.duracion=duracion;
+ this.llama=llama;
+ this.recibe=recibe;
+ }
+
+ public boolean cumple(LocalDate fecha1, LocalDate fecha2) {
+ if ((fecha.isAfter(fecha1) || fecha.equals(fecha1)) && (fecha.isBefore(fecha2) || fecha.equals(fecha2))) {
+ return true;
+ }
+ return false;
+ }
+
+ public double getDuracion() {
+ return this.duracion;
+ }
+
+ public LocalTime getHora() {
+ return this.hora;
+ }
+
+ abstract public double calcularCosto();
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Local.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Local.java
new file mode 100644
index 0000000..5989d75
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Local.java
@@ -0,0 +1,17 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.time.LocalTime;
+
+public class Local extends Llamada{
+
+ public Local(LocalDate fecha, LocalTime hora, double duracion, String llama, String recibe) {
+ super(fecha, hora, duracion, llama, recibe);
+ }
+
+ @Override
+ public double calcularCosto() {
+ return super.getDuracion();
+ }
+
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Persona.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Persona.java
deleted file mode 100644
index 52be9c1..0000000
--- a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Persona.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
-
-/**
- * De esta forma crearemos las clases del ejercicio
- *
- */
-public class Persona {
-
- private String nombre;
- private String apellido;
- private String dni;
-
-
- public String getNombre() {
- return nombre;
- }
- public void setNombre(String nombre) {
- this.nombre = nombre;
- }
- public String getApellido() {
- return apellido;
- }
- public void setApellido(String apellido) {
- this.apellido = apellido;
- }
- public String getDni() {
- return dni;
- }
- public void setDni(String dni) {
- this.dni = dni;
- }
-
- /**
- * Retorna el nombre completo de la persona de la forma apellido, nombre
- * @return
- */
- public String getNombreCompleto() {
- return this.getApellido() + ", " + this.getNombre();
- }
-
-}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Sistema.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Sistema.java
new file mode 100644
index 0000000..74ec775
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/main/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/Sistema.java
@@ -0,0 +1,26 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.util.*;
+public class Sistema {
+ List numeros = new ArrayList();
+ List clientes = new ArrayList();
+
+ public void agregarNumero(String numero) {
+ this.numeros.add(numero);
+ }
+
+ public void altaPersonaFisica(Fisico fisico) {
+ fisico.registrarNumero(this.numeros.remove(0));
+ this.clientes.add(fisico);
+ }
+
+ public void altaPersonaJurida(Juridica juridica) {
+ juridica.registrarNumero(this.numeros.remove(0));
+ this.clientes.add(juridica);
+ }
+
+ public List getNumeros(){
+ return this.numeros;
+ }
+
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/ClienteTest.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/ClienteTest.java
new file mode 100644
index 0000000..8961e4d
--- /dev/null
+++ b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/ClienteTest.java
@@ -0,0 +1,89 @@
+package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
+
+import java.time.LocalDate;
+import java.time.LocalTime;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+
+public class ClienteTest {
+
+ Local llamadaLocal;
+ Interurbana llamadaInterurbana;
+ Internacional llamadaInternacional;
+
+ Fisico fisico;
+ Juridica juridica;
+
+ LocalDate fecha;
+ LocalTime hora;
+
+ Sistema sistema;
+ LocalDate fecha1;
+ LocalDate fecha2;
+
+ @BeforeEach
+ void setUp() throws Exception{
+ fisico = new Fisico("Juan", "Los Hornos", "4321032");
+ juridica = new Juridica("Fabian", "Los Hornos", "20312340", "Sociedad Anonima");
+
+ fecha = LocalDate.of(2023, 1, 10);
+ hora = LocalTime.of(10, 0);
+
+
+ sistema=new Sistema();
+ sistema.agregarNumero("1111");
+ sistema.agregarNumero("2222");
+ sistema.altaPersonaFisica(fisico);
+ sistema.altaPersonaJurida(juridica);
+
+ fecha1 = LocalDate.of(2023, 1, 1);
+ fecha2 = LocalDate.of(2023, 1, 20);
+
+ }
+ @Test
+ public void testSistema() {
+ sistema.agregarNumero("3333");
+ sistema.agregarNumero("4444");
+ assertEquals("4444", sistema.getNumeros().get(1));
+ }
+
+ @Test
+ public void testJuridica() {
+ llamadaLocal = new Local(fecha, hora, 10, "123", "321");
+ juridica.registrarLlamada(llamadaLocal);
+
+ assertEquals(1 ,juridica.getLlamadas().size());
+ assertEquals(9, juridica.montoTotal(fecha1, fecha2));
+ }
+
+ @Test
+ public void testLocal() {
+ llamadaLocal = new Local(fecha, hora, 10, "123", "321");
+ fisico.registrarLlamada(llamadaLocal);
+
+ assertEquals(1 ,fisico.getLlamadas().size());
+ assertEquals(10, fisico.montoTotal(fecha1, fecha2));
+ }
+
+ @Test
+ public void testInterurbana() {
+ llamadaInterurbana = new Interurbana(fecha, hora, 10, "123", "321", 2000);
+ fisico.registrarLlamada(llamadaInterurbana);
+
+ assertEquals(1 ,fisico.getLlamadas().size());
+ assertEquals(15, fisico.montoTotal(fecha1, fecha2)); //5 * 3
+
+ }
+ @Test
+ public void testInternacional() {
+ llamadaInternacional = new Internacional(fecha, hora, 10, "123", "321", "Argentina", "Brazil");
+ fisico.registrarLlamada(llamadaInternacional);
+
+ assertEquals(1 ,fisico.getLlamadas().size());
+ assertEquals(40, fisico.montoTotal(fecha1, fecha2));
+
+ }
+}
diff --git a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/PersonaTest.java b/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/PersonaTest.java
deleted file mode 100644
index 3d2df0b..0000000
--- a/Practica/Ejercicio 17 Facturas de llamadas/Ejercicio-17-Facturas-de-llamadas/src/test/java/ar/edu/unlp/info/oo1/Ejercicio_17_Facturas_de_llamadas/PersonaTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package ar.edu.unlp.info.oo1.Ejercicio_17_Facturas_de_llamadas;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
-/**
- * Aca escribiremos los test de unidad para cada clase
- *
- */
-public class PersonaTest {
-
- Persona james, guido;
-
- @BeforeEach
- void setUp() throws Exception {
- james = new Persona();
- guido = new Persona();
- james.setApellido("Glosing");
- james.setNombre("James");
- guido.setApellido("van Rossum");
- guido.setNombre("Guido");
-
- }
-
- @Test
- public void testNombreCompleto() {
- assertEquals("Glosing, James", james.getNombreCompleto());
- assertEquals("van Rossum, Guido", guido.getNombreCompleto());
- }
-}
diff --git a/README.md b/README.md
index 0a75d30..054f7e9 100644
--- a/README.md
+++ b/README.md
@@ -13,14 +13,24 @@
+### Importante para el parcial
+
+
+
+
+
+---
+
+
- [Instalar Eclipse](https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2022-12/R/eclipse-inst-jre-win64.exe)
Parcial el dia 14-6 a ponerse las pilas pa
- [📝 Todas las autoEvaluaciones](/Documentos/autoevaluaciones.md)
-- [➰ Streams](/Documentos/streams.md)
+---
+
## Indice
- [1️⃣ Ejercicio 1 WallPost](/Practica/Ejercicio%201%20WallPost/)