Ejercicios Capitulo 5 bloque2
This commit is contained in:
@@ -25,6 +25,19 @@ public class Utils {
|
|||||||
return sc.nextLine();
|
return sc.nextLine();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public static float solicitarFloatScanner(String pregunta) {
|
||||||
|
System.out.println(pregunta);
|
||||||
|
Scanner sc = new Scanner(System.in);
|
||||||
|
return sc.nextFloat();
|
||||||
|
}
|
||||||
|
public static float solicitarFloatScannerInline(String pregunta) {
|
||||||
|
System.out.print(pregunta);
|
||||||
|
Scanner sc = new Scanner(System.in);
|
||||||
|
return sc.nextFloat();
|
||||||
|
}
|
||||||
|
|
||||||
public static double generarNumAleatorio(int multiplicador) {
|
public static double generarNumAleatorio(int multiplicador) {
|
||||||
return Math.random() * multiplicador;
|
return Math.random() * multiplicador;
|
||||||
}
|
}
|
||||||
|
|||||||
49
src/capitulo05/bloque02/articulosComestibles/Articulo.java
Normal file
49
src/capitulo05/bloque02/articulosComestibles/Articulo.java
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
package capitulo05.bloque02.articulosComestibles;
|
||||||
|
|
||||||
|
public class Articulo {
|
||||||
|
private int codigo;
|
||||||
|
private String nombre;
|
||||||
|
private float precio;
|
||||||
|
|
||||||
|
public Articulo() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Articulo(int codigo, String nombre, float precio) {
|
||||||
|
this.codigo = codigo;
|
||||||
|
this.nombre = nombre;
|
||||||
|
this.precio = precio;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getCodigo() {
|
||||||
|
return codigo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCodigo(int codigo) {
|
||||||
|
this.codigo = codigo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getNombre() {
|
||||||
|
return nombre;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNombre(String nombre) {
|
||||||
|
this.nombre = nombre;
|
||||||
|
}
|
||||||
|
|
||||||
|
public float getPrecio() {
|
||||||
|
return precio;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPrecio(float precio) {
|
||||||
|
this.precio = precio;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Articulos{" +
|
||||||
|
"codigo=" + codigo +
|
||||||
|
", nombre='" + nombre + '\'' +
|
||||||
|
", precio=" + precio +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package capitulo05.bloque02.articulosComestibles;
|
||||||
|
|
||||||
|
public class ArticuloNoPerecedero extends Articulo {
|
||||||
|
|
||||||
|
public ArticuloNoPerecedero() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArticuloNoPerecedero(int codigo, String nombre, float precio) {
|
||||||
|
super(codigo, nombre, precio);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "ArticuloNoPerecedero{" +
|
||||||
|
"codigo=" + super.getCodigo() +
|
||||||
|
", nombre='" + super.getNombre() + '\'' +
|
||||||
|
", precio=" + super.getPrecio() +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
package capitulo05.bloque02.articulosComestibles;
|
||||||
|
|
||||||
|
public class ArticuloPerecedero extends Articulo{
|
||||||
|
private String fecha;
|
||||||
|
|
||||||
|
public ArticuloPerecedero() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArticuloPerecedero(String fecha) {
|
||||||
|
this.fecha = fecha;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArticuloPerecedero(int codigo, String nombre, float precio, String fecha) {
|
||||||
|
super(codigo, nombre, precio);
|
||||||
|
this.fecha = fecha;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFecha() {
|
||||||
|
return fecha;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFecha(String fecha) {
|
||||||
|
this.fecha = fecha;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "ArticuloPerecedero{" +
|
||||||
|
"codigo=" + super.getCodigo() +
|
||||||
|
", nombre='" + super.getNombre() + '\'' +
|
||||||
|
", precio=" + super.getPrecio() +
|
||||||
|
", fecha='" + fecha + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
39
src/capitulo05/bloque02/articulosComestibles/Tienda.java
Normal file
39
src/capitulo05/bloque02/articulosComestibles/Tienda.java
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
package capitulo05.bloque02.articulosComestibles;
|
||||||
|
|
||||||
|
import capitulo04.utils.Utils;
|
||||||
|
import capitulo05.bloque02.coleccionAntiguedades.Joya;
|
||||||
|
import capitulo05.bloque02.coleccionAntiguedades.Libro;
|
||||||
|
|
||||||
|
public class Tienda{
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Articulo[] articulos = new Articulo[4];
|
||||||
|
|
||||||
|
for (int i = 0; i < articulos.length; i++) {
|
||||||
|
if (Math.round(Math.random()) == 1) {
|
||||||
|
System.out.println("Introduzca los datos de un artículo perecedero");
|
||||||
|
articulos[i] = registrarDatos(new ArticuloPerecedero());
|
||||||
|
ArticuloPerecedero art = (ArticuloPerecedero) articulos[i];
|
||||||
|
art.setFecha(Utils.solicitarStringScannerInline("Introduzca la fecha en la que caduca este artículo: "));
|
||||||
|
} else {
|
||||||
|
System.out.println("Introduzca los datos de un artículo no perecedero");
|
||||||
|
articulos[i] = registrarDatos(new ArticuloNoPerecedero());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < articulos.length; i++) {
|
||||||
|
if (articulos[i] instanceof ArticuloPerecedero artP) {
|
||||||
|
System.out.println(artP.toString());
|
||||||
|
} else if (articulos[i] instanceof ArticuloNoPerecedero artNP) {
|
||||||
|
System.out.println(artNP.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Articulo registrarDatos(Articulo articulo) {
|
||||||
|
articulo.setCodigo(Utils.solicitarIntScannerInline("Introduzca código del artículo: "));
|
||||||
|
articulo.setNombre(Utils.solicitarStringScannerInline("Introduzca el nombre del artículo: "));
|
||||||
|
articulo.setPrecio(Utils.solicitarFloatScannerInline("Introduzca el precio del artículo: "));
|
||||||
|
|
||||||
|
return articulo;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
package capitulo05.bloque02.coleccionAntiguedades;
|
||||||
|
|
||||||
|
public class Antiguedad {
|
||||||
|
private int anoFabricacion;
|
||||||
|
private String origen;
|
||||||
|
private float precioVenta;
|
||||||
|
|
||||||
|
public Antiguedad() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Antiguedad(int anoFabricacion, String origen, float precioVenta) {
|
||||||
|
this.anoFabricacion = anoFabricacion;
|
||||||
|
this.origen = origen;
|
||||||
|
this.precioVenta = precioVenta;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getAnoFabricacion() {
|
||||||
|
return anoFabricacion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAnoFabricacion(int anoFabricacion) {
|
||||||
|
this.anoFabricacion = anoFabricacion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getOrigen() {
|
||||||
|
return origen;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrigen(String origen) {
|
||||||
|
this.origen = origen;
|
||||||
|
}
|
||||||
|
|
||||||
|
public float getPrecioVenta() {
|
||||||
|
return precioVenta;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPrecioVenta(float precioVenta) {
|
||||||
|
this.precioVenta = precioVenta;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Antiguedad{" +
|
||||||
|
"anoFabricacion=" + anoFabricacion +
|
||||||
|
", origen='" + origen + '\'' +
|
||||||
|
", precioVenta=" + precioVenta +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
package capitulo05.bloque02.coleccionAntiguedades;
|
||||||
|
|
||||||
|
import capitulo04.utils.Utils;
|
||||||
|
|
||||||
|
public class ColeccionAntiguedades {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Antiguedad antiguedad = null;
|
||||||
|
int eleccion = Utils.solicitarIntScannerInline("Sistema de registro de antigüedades\n" +
|
||||||
|
"Seleccione el tipo de antigüedad:\n" +
|
||||||
|
" 1 - Joya\n" +
|
||||||
|
" 2 - Libro\n" +
|
||||||
|
" 3 - Cuadro\n" +
|
||||||
|
" 4 - Escultura\n" +
|
||||||
|
"> ");
|
||||||
|
|
||||||
|
switch (eleccion) {
|
||||||
|
case 1:
|
||||||
|
Joya joyita = (Joya) registrarDatos(new Joya());
|
||||||
|
|
||||||
|
joyita.setMaterialFabricacion(Utils.solicitarStringScannerInline("Introduzca el material de fabricación de la joya: "));
|
||||||
|
antiguedad = joyita;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
Libro librito = (Libro) registrarDatos(new Libro());
|
||||||
|
|
||||||
|
librito.setTitulo(Utils.solicitarStringScannerInline("Introduzca el título del libro: "));
|
||||||
|
librito.setAutor(Utils.solicitarStringScannerInline("Introduzca el nombre del autor del libro: "));
|
||||||
|
antiguedad = librito;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
Cuadro cuadrito = (Cuadro) registrarDatos(new Cuadro());
|
||||||
|
|
||||||
|
cuadrito.setPintor(Utils.solicitarStringScannerInline("Introduzca el nombre del pintor del cuadro: "));
|
||||||
|
antiguedad = cuadrito;
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
Escultura esculturita = (Escultura) registrarDatos(new Escultura());
|
||||||
|
|
||||||
|
esculturita.setAltura(Utils.solicitarFloatScannerInline("Introduzca la altura de la escultura: "));
|
||||||
|
esculturita.setEscultor(Utils.solicitarStringScannerInline("Introduzca el nombre del escultor: "));
|
||||||
|
esculturita.setMaterial(Utils.solicitarStringScannerInline("Introduzca el material del que está hecha la escultura: "));
|
||||||
|
antiguedad = esculturita;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
System.out.println("No ha introducido una opción válida");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (antiguedad instanceof Joya joyita) {
|
||||||
|
System.out.println(joyita.toString());
|
||||||
|
} else if (antiguedad instanceof Libro librito) {
|
||||||
|
System.out.println(librito.toString());
|
||||||
|
} else if (antiguedad instanceof Cuadro cuadrito) {
|
||||||
|
System.out.println(cuadrito.toString());
|
||||||
|
} else if (antiguedad instanceof Escultura esculturita) {
|
||||||
|
System.out.println(esculturita.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
public static Antiguedad registrarDatos(Antiguedad antiguedad) {
|
||||||
|
antiguedad.setOrigen(Utils.solicitarStringScannerInline("Introduzca el origen del artículo: "));
|
||||||
|
antiguedad.setAnoFabricacion(Utils.solicitarIntScannerInline("Introduzca el año de fabricación del artículo: "));
|
||||||
|
antiguedad.setPrecioVenta(Utils.solicitarFloatScannerInline("Introduzca el precio del artículo: "));
|
||||||
|
|
||||||
|
return antiguedad;
|
||||||
|
}
|
||||||
|
}
|
||||||
35
src/capitulo05/bloque02/coleccionAntiguedades/Cuadro.java
Normal file
35
src/capitulo05/bloque02/coleccionAntiguedades/Cuadro.java
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
package capitulo05.bloque02.coleccionAntiguedades;
|
||||||
|
|
||||||
|
public class Cuadro extends Antiguedad{
|
||||||
|
private String pintor;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public Cuadro() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Cuadro(int anoFabricacion, String origen, float precioVenta, String pintor) {
|
||||||
|
super(anoFabricacion, origen, precioVenta);
|
||||||
|
this.pintor = pintor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPintor() {
|
||||||
|
return pintor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPintor(String pintor) {
|
||||||
|
this.pintor = pintor;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Cuadro{" +
|
||||||
|
|
||||||
|
"anoFabricacion=" + super.getAnoFabricacion() +
|
||||||
|
", origen='" + super.getOrigen() + '\'' +
|
||||||
|
", precioVenta=" + super.getPrecioVenta() +
|
||||||
|
|
||||||
|
", pintor='" + pintor + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
55
src/capitulo05/bloque02/coleccionAntiguedades/Escultura.java
Normal file
55
src/capitulo05/bloque02/coleccionAntiguedades/Escultura.java
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
package capitulo05.bloque02.coleccionAntiguedades;
|
||||||
|
|
||||||
|
public class Escultura extends Antiguedad {
|
||||||
|
private String escultor;
|
||||||
|
private float altura;
|
||||||
|
private String material;
|
||||||
|
|
||||||
|
public Escultura() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Escultura(int anoFabricacion, String origen, float precioVenta, String escultor, float altura, String material) {
|
||||||
|
super(anoFabricacion, origen, precioVenta);
|
||||||
|
this.escultor = escultor;
|
||||||
|
this.altura = altura;
|
||||||
|
this.material = material;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEscultor() {
|
||||||
|
return escultor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEscultor(String escultor) {
|
||||||
|
this.escultor = escultor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public float getAltura() {
|
||||||
|
return altura;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAltura(float altura) {
|
||||||
|
this.altura = altura;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMaterial() {
|
||||||
|
return material;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaterial(String material) {
|
||||||
|
this.material = material;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Escultura{" +
|
||||||
|
|
||||||
|
"anoFabricacion=" + super.getAnoFabricacion() +
|
||||||
|
", origen='" + super.getOrigen() + '\'' +
|
||||||
|
", precioVenta=" + super.getPrecioVenta() +
|
||||||
|
|
||||||
|
", escultor='" + escultor + '\'' +
|
||||||
|
", altura=" + altura +
|
||||||
|
", material='" + material + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
33
src/capitulo05/bloque02/coleccionAntiguedades/Joya.java
Normal file
33
src/capitulo05/bloque02/coleccionAntiguedades/Joya.java
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
package capitulo05.bloque02.coleccionAntiguedades;
|
||||||
|
|
||||||
|
public class Joya extends Antiguedad{
|
||||||
|
private String materialFabricacion;
|
||||||
|
|
||||||
|
public Joya() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Joya(int anoFabricacion, String origen, float precioVenta, String materialFabricacion) {
|
||||||
|
super(anoFabricacion, origen, precioVenta);
|
||||||
|
this.materialFabricacion = materialFabricacion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMaterialFabricacion() {
|
||||||
|
return materialFabricacion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaterialFabricacion(String materialFabricacion) {
|
||||||
|
this.materialFabricacion = materialFabricacion;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Joya{" +
|
||||||
|
|
||||||
|
"anoFabricacion=" + super.getAnoFabricacion() +
|
||||||
|
", origen='" + super.getOrigen() + '\'' +
|
||||||
|
", precioVenta=" + super.getPrecioVenta() +
|
||||||
|
|
||||||
|
", materialFabricacion='" + materialFabricacion + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
44
src/capitulo05/bloque02/coleccionAntiguedades/Libro.java
Normal file
44
src/capitulo05/bloque02/coleccionAntiguedades/Libro.java
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
package capitulo05.bloque02.coleccionAntiguedades;
|
||||||
|
|
||||||
|
public class Libro extends Antiguedad{
|
||||||
|
private String autor;
|
||||||
|
private String titulo;
|
||||||
|
|
||||||
|
public Libro() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Libro(int anoFabricacion, String origen, float precioVenta, String autor, String titulo) {
|
||||||
|
super(anoFabricacion, origen, precioVenta);
|
||||||
|
this.autor = autor;
|
||||||
|
this.titulo = titulo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAutor() {
|
||||||
|
return autor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAutor(String autor) {
|
||||||
|
this.autor = autor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTitulo() {
|
||||||
|
return titulo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTitulo(String titulo) {
|
||||||
|
this.titulo = titulo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Libro{" +
|
||||||
|
|
||||||
|
"anoFabricacion=" + super.getAnoFabricacion() +
|
||||||
|
", origen='" + super.getOrigen() + '\'' +
|
||||||
|
", precioVenta=" + super.getPrecioVenta() +
|
||||||
|
|
||||||
|
", autor='" + autor + '\'' +
|
||||||
|
", titulo='" + titulo + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user