Ejercicios Capitulo 7 bloque 3
This commit is contained in:
27
src/capitulo07/bloque03/ejercicio01/PeticionNumeros.java
Normal file
27
src/capitulo07/bloque03/ejercicio01/PeticionNumeros.java
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio01;
|
||||||
|
|
||||||
|
import capitulo07.bloque03.ejercicio01.exeptions.OddException;
|
||||||
|
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
public class PeticionNumeros {
|
||||||
|
static Scanner sc = new Scanner(System.in);
|
||||||
|
public static int pideNumeroPar() throws OddException {
|
||||||
|
System.out.print("Escriba un número par: ");
|
||||||
|
int num = sc.nextInt();
|
||||||
|
if (num % 2 != 0) throw new OddException("El número dado es impar.");
|
||||||
|
return num;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
int num = 0;
|
||||||
|
do {
|
||||||
|
try {
|
||||||
|
num = pideNumeroPar();
|
||||||
|
} catch (OddException e) {
|
||||||
|
System.err.println("El número dado es impar por lo que ha provocado la siguiente Exception: ");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
} while (num != 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio01.exeptions;
|
||||||
|
|
||||||
|
public class OddException extends Exception{
|
||||||
|
public OddException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
50
src/capitulo07/bloque03/ejercicio02/Main.java
Normal file
50
src/capitulo07/bloque03/ejercicio02/Main.java
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio02;
|
||||||
|
|
||||||
|
import capitulo07.bloque03.ejercicio02.exceptions.StringContienePalabraProhibidaException;
|
||||||
|
import capitulo07.bloque03.ejercicio02.exceptions.StringEnBlancoException;
|
||||||
|
import capitulo07.bloque03.ejercicio02.exceptions.StringMenosTresPalabrasException;
|
||||||
|
import capitulo07.bloque03.ejercicio02.exceptions.StringSinPalabraRequeridaException;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
static Scanner sc = new Scanner(System.in);
|
||||||
|
|
||||||
|
public static String pedirFraseConPalabra(String palabra) throws StringEnBlancoException, StringMenosTresPalabrasException, StringSinPalabraRequeridaException, StringContienePalabraProhibidaException {
|
||||||
|
String textoIntroducido;
|
||||||
|
String[] palabrasProhibidas = new String[]{"tonto", "tonta", "idiota"};
|
||||||
|
|
||||||
|
System.out.print("Introduzca una frase con la palabra " + palabra + ": ");
|
||||||
|
textoIntroducido = sc.nextLine();
|
||||||
|
if (textoIntroducido.isBlank())
|
||||||
|
throw new StringEnBlancoException("La cadena de texto está vacía o sólo tiene espacios en Blanco");
|
||||||
|
|
||||||
|
int conteoEspacios = 0;
|
||||||
|
for (char c : textoIntroducido.trim().toCharArray()) {
|
||||||
|
if (c == ' ') conteoEspacios++;
|
||||||
|
}
|
||||||
|
if (conteoEspacios <= 1)
|
||||||
|
throw new StringMenosTresPalabrasException("La cadena de texto tiene menos de 3 palabras");
|
||||||
|
|
||||||
|
if (!textoIntroducido.toLowerCase().contains(palabra))
|
||||||
|
throw new StringSinPalabraRequeridaException("La cadena de texto no contiene la palabra requerida");
|
||||||
|
|
||||||
|
for (String str : palabrasProhibidas) {
|
||||||
|
if (textoIntroducido.toLowerCase().contains(str))
|
||||||
|
throw new StringContienePalabraProhibidaException("La cadena de texto contiene una palabra prohibida");
|
||||||
|
}
|
||||||
|
|
||||||
|
return textoIntroducido;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try {
|
||||||
|
String stringIntroducido = pedirFraseConPalabra("bombilla");
|
||||||
|
} catch (StringEnBlancoException | StringMenosTresPalabrasException | StringSinPalabraRequeridaException | StringContienePalabraProhibidaException e) {
|
||||||
|
System.err.println(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio02.exceptions;
|
||||||
|
|
||||||
|
public class StringContienePalabraProhibidaException extends RuntimeException {
|
||||||
|
public StringContienePalabraProhibidaException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio02.exceptions;
|
||||||
|
|
||||||
|
public class StringEnBlancoException extends Exception {
|
||||||
|
public StringEnBlancoException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio02.exceptions;
|
||||||
|
|
||||||
|
public class StringMenosTresPalabrasException extends RuntimeException {
|
||||||
|
public StringMenosTresPalabrasException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package capitulo07.bloque03.ejercicio02.exceptions;
|
||||||
|
|
||||||
|
public class StringSinPalabraRequeridaException extends RuntimeException {
|
||||||
|
public StringSinPalabraRequeridaException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user