Ejercicios Capitulo 5 bloque 3

This commit is contained in:
2024-12-07 23:17:51 +01:00
parent 9e12a3d1da
commit f1d6cc1bb0
19 changed files with 333 additions and 3 deletions

View File

@@ -8,6 +8,7 @@ public class Utils {
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
return sc.nextInt(); return sc.nextInt();
} }
public static String solicitarStringScanner(String pregunta) { public static String solicitarStringScanner(String pregunta) {
System.out.println(pregunta); System.out.println(pregunta);
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
@@ -19,6 +20,7 @@ public class Utils {
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
return sc.nextInt(); return sc.nextInt();
} }
public static String solicitarStringScannerInline(String pregunta) { public static String solicitarStringScannerInline(String pregunta) {
System.out.print(pregunta); System.out.print(pregunta);
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
@@ -26,12 +28,12 @@ public class Utils {
} }
public static float solicitarFloatScanner(String pregunta) { public static float solicitarFloatScanner(String pregunta) {
System.out.println(pregunta); System.out.println(pregunta);
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
return sc.nextFloat(); return sc.nextFloat();
} }
public static float solicitarFloatScannerInline(String pregunta) { public static float solicitarFloatScannerInline(String pregunta) {
System.out.print(pregunta); System.out.print(pregunta);
Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(System.in);
@@ -42,11 +44,16 @@ public class Utils {
return Math.random() * multiplicador; return Math.random() * multiplicador;
} }
public static int generarIntAleatorioEntreLimites(int limiteMin, int limiteMax) {
return limiteMin + ((int) Math.round(Math.random() * (limiteMax - limiteMin)));
}
public static void mostrarArrayNums(int array[]) { public static void mostrarArrayNums(int array[]) {
for (int num : array) { for (int num : array) {
System.out.print(num + " "); System.out.print(num + " ");
} }
} }
public static int[] crearArrayNumsAleatorios(int cantidadElementos, int numMinimo, int numMaximo) { public static int[] crearArrayNumsAleatorios(int cantidadElementos, int numMinimo, int numMaximo) {
int[] nums = new int[cantidadElementos]; int[] nums = new int[cantidadElementos];
@@ -55,6 +62,7 @@ public class Utils {
} }
return nums; return nums;
} }
public static int[] crearArrayNumsAleatoriosSinRepeticiones(int cantidadElementos, int numMinimo, int numMaximo) { public static int[] crearArrayNumsAleatoriosSinRepeticiones(int cantidadElementos, int numMinimo, int numMaximo) {
int[] nums = new int[cantidadElementos]; int[] nums = new int[cantidadElementos];
@@ -75,6 +83,7 @@ public class Utils {
} }
return nums; return nums;
} }
public static String cambiarAMinuscula(String textoACambiar) { public static String cambiarAMinuscula(String textoACambiar) {
String minuscula = ""; String minuscula = "";
for (int i = 0; i < textoACambiar.length(); i++) { for (int i = 0; i < textoACambiar.length(); i++) {

View File

@@ -1,8 +1,7 @@
package capitulo05.bloque02.articulosComestibles; package capitulo05.bloque02.articulosComestibles;
import capitulo04.utils.Utils; import capitulo04.utils.Utils;
import capitulo05.bloque02.coleccionAntiguedades.Joya;
import capitulo05.bloque02.coleccionAntiguedades.Libro;
public class Tienda{ public class Tienda{
public static void main(String[] args) { public static void main(String[] args) {

View File

@@ -0,0 +1,6 @@
package capitulo05.bloque03.animales;
public abstract class Animal {
protected String nombre;
public abstract void emitirSonido();
}

View File

@@ -0,0 +1,12 @@
package capitulo05.bloque03.animales;
public class Gato extends Animal{
public Gato() {
}
@Override
public void emitirSonido() {
System.out.println("🐱: Miau");
}
}

View File

@@ -0,0 +1,12 @@
package capitulo05.bloque03.animales;
public class Perro extends Animal{
public Perro() {
}
@Override
public void emitirSonido() {
System.out.println("🐶: Guau");
}
}

View File

@@ -0,0 +1,18 @@
package capitulo05.bloque03.animales;
public class Principal {
public static void main(String[] args) {
Animal[] animales = new Animal[10];
for (int i = 0; i < animales.length; i++) {
if (Math.round(Math.random()) == 1) {
animales[i] = new Gato();
} else {
animales[i] = new Perro();
}
}
for (Animal animal : animales) {
animal.emitirSonido();
}
}
}

View File

@@ -0,0 +1,37 @@
package capitulo05.bloque03.figuras;
public class Circulo extends Figura{
private float radio;
public Circulo() {
}
public Circulo(float radio) {
this.radio = radio;
}
@Override
public float calcularArea() {
return (float) (radio * Math.pow(Math.PI, 2));
}
@Override
public float calcularPerimetro() {
return (float) (2 * Math.PI * radio);
}
public float getRadio() {
return radio;
}
public void setRadio(float radio) {
this.radio = radio;
}
@Override
public String toString() {
return "Circulo{" +
"radio=" + radio +
'}';
}
}

View File

@@ -0,0 +1,7 @@
package capitulo05.bloque03.figuras;
public abstract class Figura {
public abstract float calcularArea();
public abstract float calcularPerimetro();
}

View File

@@ -0,0 +1,14 @@
package capitulo05.bloque03.figuras;
public class Principal {
public static void main(String[] args) {
Circulo circulo = new Circulo(2.4f);
Rectangulo cuadrado = new Rectangulo(3.5f, 6.7f);
System.out.println("Perímetro Circulo: " + circulo.calcularPerimetro());
System.out.println("Área Circulo: " + circulo.calcularArea());
System.out.println("Perímetro Cuadrado: " + cuadrado.calcularPerimetro());
System.out.println("Área Cuadrado: " + cuadrado.calcularArea());
}
}

View File

@@ -0,0 +1,48 @@
package capitulo05.bloque03.figuras;
public class Rectangulo extends Figura{
private float alto;
private float ancho;
public Rectangulo() {
}
public Rectangulo(float alto, float ancho) {
this.alto = alto;
this.ancho = ancho;
}
@Override
public float calcularArea() {
return this.alto * this.ancho;
}
@Override
public float calcularPerimetro() {
return (this.alto * 2) + (this.ancho * 2);
}
public float getAlto() {
return alto;
}
public void setAlto(float alto) {
this.alto = alto;
}
public float getAncho() {
return ancho;
}
public void setAncho(float ancho) {
this.ancho = ancho;
}
@Override
public String toString() {
return "Rectangulo{" +
"alto=" + alto +
", ancho=" + ancho +
'}';
}
}

View File

@@ -0,0 +1,9 @@
package capitulo05.bloque03.instrumentos;
public class Bateria extends Instrumento{
@Override
public void tocar() {
System.out.println("Ba Dum Tss!");
}
}

View File

@@ -0,0 +1,9 @@
package capitulo05.bloque03.instrumentos;
public class Guitarra extends Instrumento{
@Override
public void tocar() {
System.out.println("Brum brum bram");
}
}

View File

@@ -0,0 +1,6 @@
package capitulo05.bloque03.instrumentos;
public abstract class Instrumento {
public abstract void tocar();
}

View File

@@ -0,0 +1,9 @@
package capitulo05.bloque03.instrumentos;
public class Piano extends Instrumento{
@Override
public void tocar() {
System.out.println("din don din din don");
}
}

View File

@@ -0,0 +1,24 @@
package capitulo05.bloque03.instrumentos;
import capitulo04.utils.Utils;
public class Principal {
public static void main(String[] args) {
Instrumento[] instrumentos = new Instrumento[10];
for (int i = 0; i < instrumentos.length; i++) {
int numAleatorio = Utils.generarIntAleatorioEntreLimites(0,2);
if (numAleatorio == 0) {
instrumentos[i] = new Guitarra();
} else if (numAleatorio == 1) {
instrumentos[i] = new Piano();
} else {
instrumentos[i] = new Bateria();
}
}
for (Instrumento ins : instrumentos) {
ins.tocar();
}
}
}

View File

@@ -0,0 +1,19 @@
package capitulo05.bloque03.vehiculos;
public class Bicicleta extends Vehiculo{
public Bicicleta(int velocidad, String nombreModelo) {
this.setVelocidadActual(velocidad);
this.setModelo(nombreModelo);
}
@Override
public void acelerar() {
this.setVelocidadActual(getVelocidadActual() + 5);
}
@Override
public void frenar() {
this.setVelocidadActual(getVelocidadActual() + 4);
}
}

View File

@@ -0,0 +1,19 @@
package capitulo05.bloque03.vehiculos;
public class Coche extends Vehiculo{
public Coche(int velocidad, String nombreModelo) {
this.setVelocidadActual(velocidad);
this.setModelo(nombreModelo);
}
@Override
public void acelerar() {
this.setVelocidadActual(getVelocidadActual() + 20);
}
@Override
public void frenar() {
this.setVelocidadActual(getVelocidadActual() + 40);
}
}

View File

@@ -0,0 +1,37 @@
package capitulo05.bloque03.vehiculos;
import capitulo04.utils.Utils;
public class Principal {
public static void main(String[] args) {
Vehiculo[] vehiculos = new Vehiculo[10];
for (int i = 0; i < vehiculos.length; i++) {
if (Math.round(Math.random()) == 1) {
vehiculos[i] = new Coche(Utils.generarIntAleatorioEntreLimites(0,1000), "Coche-" + i);
} else {
vehiculos[i] = new Coche(Utils.generarIntAleatorioEntreLimites(0,100), "Bici-" + i);
}
}
System.out.println("Vehículos con velocidad base");
for (Vehiculo vehiculo : vehiculos) {
System.out.println(vehiculo);
}
System.out.println("Vehículos acelerando");
for (Vehiculo vehiculo : vehiculos) {
vehiculo.acelerar();
System.out.println(vehiculo);
}
System.out.println("Vehículos frenando");
for (Vehiculo vehiculo : vehiculos) {
vehiculo.frenar();
System.out.println(vehiculo);
}
}
}

View File

@@ -0,0 +1,36 @@
package capitulo05.bloque03.vehiculos;
public abstract class Vehiculo {
private int velocidadActual;
private String modelo;
public abstract void acelerar();
public abstract void frenar();
public int getVelocidadActual() {
return velocidadActual;
}
public void setVelocidadActual(int velocidadActual) {
this.velocidadActual = velocidadActual;
}
public String getModelo() {
return modelo;
}
public void setModelo(String modelo) {
this.modelo = modelo;
}
@Override
public String toString() {
return "Vehiculo{" +
"velocidadActual=" + velocidadActual +
", modelo='" + modelo + '\'' +
'}';
}
}