En esta ocasión bienvenido otro
del
Hola compañero,realizaremosa un ejercicio mas
Veamos el siguiente enunciado…
tema Excepciones.
del tutorial de POO.
En esta ocasión realizaremos otro ejercicio del
Veamos el siguiente enunciado…
tema Excepciones.
Veamos el siguiente enunciado…
Basados en el ejercicio anterior, capturar correctamente los errores
de entrada de datos respecto de los de conversión de texto en
números. Imprimir en pantalla con printStackTrace, para el caso de
entrada, y avisar al usuario que la edad no fue ingresada
correctamente.
Utilizar un bloque while para forzar al usuario a ingresar de nuevo
su nombre y edad si se detecta un error.
Para este ejercicio nuevamente
importaremos la librería java.io.* y
después crearemos un objeto de
BufferedReader. Igualmente
definiremos las variables nombre,
edad y categoría asignando
valores por defecto.
Para este ejercicio nuevamente
imporemos la librería java.io.* y
después crearemos un objeto de
BufferedReader. Igualmente
definiremos las variables nombre,
edad y categoría asignando
valores por defecto.

import java.io.*;
public class Cap2Ej3 {
public static void main(String[] args) {
//Definimos el objeto br para leer líneas
de la entrada
BufferedReader br=new BufferedReader(new
InputStreamReader(System.in));
//Definimos variables nombre, error y
acumulador dándole valores por defecto
String nombre="";
float acumulador=0;
boolean error;
Ahora bien, el problema pidey
SiPor usuario ingresa producesu
el otro lado, desde luego un
Agregamos si entre llaves que
Colocaremos se una cadena
EnYa ejercicio anteriorposibles
Para identificadas las utilizamos
el esto vamos a definir un do
después solicitamos undatos por
cuando debloque catch con las
respectivo lectura de identificar
Esta ocasión vamos a reservada
error en la laal usuario entero se
se le solicite palabra un valor
una forma general paraa definir
excepciones las opciones
while con vamos identificar
acciones acciones ense éste lo
adecuadoobtendremosque
try las a realizar que produce
consola hasta si las la
producirá la excepción
los errores específicos.
ahora elexcepciones.
correspondientes.
las bloque try-catch.
pudierauna ingrese. excepción.
NumberFormatException.
excepción IOException.
ocurrir una
excepción.
Ahora bien, el problema pidey
SiPor usuario ingresa producesu
el otro lado, desde luego un
Agregamos si entre llaves que
Colocaremos se una cadena
Para identificadas las posibles
Ya esto vamos a definir un do
después solicitamos undatos por
cuando debloque catch con las
respectivo lectura de identificar
Esta ocasión vamos a reservada
error en la laal usuario entero se
se le solicite palabra un valor
excepciones las opciones
while con vamos a definir
acciones acciones ense éste lo
adecuadoobtendremosque
try las a realizar que produce
consola hasta si las la
producirá la excepción
los errores específicos.
ahora el bloque try-catch.
correspondientes.
pudierauna ingrese. excepción.
NumberFormatException.
excepción IOException.
ocurrir una
excepción.
Ahora bien, el problema pidey
SiPor usuario ingresa producesu
el otro lado, desde luego un
Agregamos si entre llaves que
Colocaremos se una cadena
Para identificadas las posibles
Ya esto vamos a definir un do
después solicitamos undatos por
cuando debloque catch con las
respectivo lectura de reservada
error en la laal usuario entero se
se le solicite palabra un valor
excepciones las opciones
while con vamos a definir
acciones acciones ense éste lo
adecuadoobtendremosque
try las a realizar que produce
consola hasta si las la
producirá la excepción
ahora el bloque try-catch.
correspondientes.
pudierauna ingrese. excepción.
NumberFormatException.
excepción IOException.
ocurrir una
excepción.
Ahora bien, el problema pidey
Por otro lado, desde luego su
Agregamos si entre llaves un
Colocaremos se produce que
Para identificadas las posibles
Ya esto vamos a definir un do
después debloque catch con las
respectivo lectura de datos por
error en la laal usuarioreservada
se le solicite palabra un valor
excepciones las opciones
while con vamos a definir
acciones acciones ense éste lo
adecuadoobtendremosque
try las a realizar que produce
consola hasta si las la
ahora el bloque try-catch.
correspondientes.
pudierauna ingrese. excepción.
excepción IOException.
ocurrir una
excepción.
Ahora bien, el problema pidey
Agregamos desde luego su
Colocaremos entre llaves que
Para identificadas las posibles
Ya esto vamos a definir un do
después debloque catch con las
respectivo laal usuarioreservada
se le solicite palabra un valor
excepciones las opciones
while con vamos a definir
acciones acciones ense éste lo
adecuado hasta que produce
try las a realizar si las que
ahora el bloque try-catch.
correspondientes.
pudierauna ingrese. excepción.
ocurrir una
excepción.
Ahora bien, el problema pidey
Agregamos desde luego su
Colocaremos entre llaves que
Para esto vamos a definir un do
después debloque catch con las
respectivo laal usuarioreservada
se le solicite palabra un valor
while con las opciones
acciones acciones ense éste lo
adecuado hasta que produce
try las a realizar si las que
correspondientes.
pudierauna ingrese. excepción.
ocurrir una
excepción.
Ahora bien, el problema pidey
Agregamos desde luego su
Colocaremos entre llaves que
Para esto vamos a definir un do
después debloque catch con las
respectivo laal usuarioreservada
se le solicite palabra un valor
while con las opciones
acciones acciones ense éste lo
adecuado hasta que produce
try las a realizar si las que
correspondientes.
pudierauna ingrese. excepción.
ocurrir una
excepción.

//Iniciamos el bloque que podrá producir
errores, sólo para el nombre
try {
System.out.println("Nombre:?");
nombre = br.readLine();}
Ahora bien, el problema pide que
Agregamos desde luego su
Para esto vamos a definir un do
respectivo bloque catch con las
se le solicite al usuario un valor
while con las opciones
acciones a realizar que éste lo
adecuado hasta si se produce
correspondientes.
una ingrese.
excepción.

//Iniciamos el bloque que podrá producir
errores, sólo para el nombre
try {
System.out.println("Nombre:?");
nombre = br.readLine();}
Ahora bien, el problema pide que
Agregamos desde luego su
Para esto vamos a definir un do
respectivo bloque catch con las
se le solicite al usuario un valor
while con las opciones
acciones a realizar que éste lo
adecuado hasta si se produce
correspondientes.
una ingrese.
excepción.

//Iniciamos el bloque que podrá producir
errores, sólo para el nombre
try {
System.out.println("Nombre:?");
nombre = br.readLine();}
catch (IOException ex)
{ex.printStackTrace(System.err);}
Ahora bien, el problema pide que
Para esto vamos a definir un do
se le solicite al usuario un valor
while con las opciones
adecuado hasta que éste lo
correspondientes.
ingrese.

//Iniciamos el bloque que podrá producir
errores, sólo para el nombre
try {
System.out.println("Nombre:?");
nombre = br.readLine();}
catch (IOException ex)
{ex.printStackTrace(System.err);}
Para esto vamos a definir un do
while con las opciones
correspondientes.

//Iniciamos el bloque que podrá producir
errores, sólo para el nombre
try {
System.out.println("Nombre:?");
nombre = br.readLine();}
catch (IOException ex)
{ex.printStackTrace(System.err);}
Para esto vamos a definir un do
while con las opciones
correspondientes.

//Iniciamos el bloque que podrá producir
errores, sólo para el nombre
try {
System.out.println("Nombre:?");
nombre = br.readLine();}
catch (IOException ex)
{ex.printStackTrace(System.err);}
//iniciamos una iteración del 0 al 9
for(int i=0;i<10;i++){
error=false;
//iniciamos el bloque do{} while(); que se
repetirá en caso de error
do{
error=false;
Iniciamos el siguiente bloque trycatch para
NumberFormatException.
Iniciamos el siguiente bloque trycatch para
NumberFormatException.

//iniciamos el bloque try que podrá dar
error de conversión numérica
try{
//ponemos i+1 entre (), caso contrario se
concatenarán como texto
System.out.print("Examen "+(i+1)+"? ");
acumulador+=Float.parseFloat(br.readLine())
;Como por defecto la categoría es A,
revisamos si aumentamos a B o C
if(edad>25){categoria='B';}
if(edad>50){categoria='C';}
}
Adjuntamos también el catch
Colocamos su respectivo catch
respectivo por siel resultado y lo
Redondeamos se produce una
con las acciones a realizar si se
Calculamos el promedio.
IOException y cerramos el do
imprimimos en pantalla.
produce la excepción.
while.
catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}

Adjuntamos también el catch
Colocamos su respectivo catch
respectivo por siel resultado y lo
Redondeamos se produce una
con las acciones a realizar si se
Calculamos el promedio.
IOException y cerramos el do
imprimimos en pantalla.
produce la excepción.
while.
catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}

Adjuntamos también el catch
respectivo por siel resultado y lo
Redondeamos se produce una
Calculamos el promedio.
IOException y cerramos el do
imprimimos en pantalla.
while.
Adjuntamos también el catch
respectivo por siel resultado y lo
Redondeamos se produce una
Calculamos el promedio.
IOException y cerramos el do
imprimimos en pantalla.
while.

catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}
catch(IOException
ex){ex.printStackTrace();System.exit(-1);}
}while (error);
}
Redondeamos el resultado y lo
Calculamos el promedio.
imprimimos en pantalla.

catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}
catch(IOException
ex){ex.printStackTrace();System.exit(-1);}
}while (error);
}
Redondeamos el resultado y lo
Calculamos el promedio.
imprimimos en pantalla.

catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}
catch(IOException
ex){ex.printStackTrace();System.exit(-1);}
}while (error);
}

//Tenemos lista la suma parcial y
calculamos su promedio.
acumulador/=10;
Redondeamos el resultado y lo
imprimimos en pantalla.

catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}
catch(IOException
ex){ex.printStackTrace();System.exit(-1);}
}while (error);
}

//Tenemos lista la suma parcial y
calculamos su promedio.
acumulador/=10;
Redondeamos el resultado y lo
imprimimos en pantalla.

catch(NumberFormatException ex)
{System.out.println("Error, ingresar
denuevo");error=true;}
catch(IOException
ex){ex.printStackTrace();System.exit(-1);}
}while (error);
}

//Tenemos lista la suma parcial y
calculamos su promedio.
acumulador/=10;
//Redondeamos el resultado a dos digitos.
acumulador=(float)Math.round(acumulador*100
)/100;
System.out.println(nombre+", tu promedio es
de: "+acumulador);
System.exit(0);}}
Utilizando JCreator ejecutaremos
nuestro main y obtendremos un
resultado como el siguiente…
Bueno compañero, esto fue todo
por Nos vemos en que la solución
ahora, espero el siguiente
de ejercicio. Hasta pronto.
este ejercicio te haya sido
clara y provechosa.
Nos vemos en el siguiente
ejercicio. Hasta pronto.

Unidad 5: Excepciones Ejercicio 2

  • 2.
    En esta ocasiónbienvenido otro del Hola compañero,realizaremosa un ejercicio mas Veamos el siguiente enunciado… tema Excepciones. del tutorial de POO.
  • 3.
    En esta ocasiónrealizaremos otro ejercicio del Veamos el siguiente enunciado… tema Excepciones.
  • 4.
    Veamos el siguienteenunciado…
  • 5.
    Basados en elejercicio anterior, capturar correctamente los errores de entrada de datos respecto de los de conversión de texto en números. Imprimir en pantalla con printStackTrace, para el caso de entrada, y avisar al usuario que la edad no fue ingresada correctamente. Utilizar un bloque while para forzar al usuario a ingresar de nuevo su nombre y edad si se detecta un error.
  • 6.
    Para este ejercicionuevamente importaremos la librería java.io.* y después crearemos un objeto de BufferedReader. Igualmente definiremos las variables nombre, edad y categoría asignando valores por defecto.
  • 7.
    Para este ejercicionuevamente imporemos la librería java.io.* y después crearemos un objeto de BufferedReader. Igualmente definiremos las variables nombre, edad y categoría asignando valores por defecto. import java.io.*; public class Cap2Ej3 { public static void main(String[] args) { //Definimos el objeto br para leer líneas de la entrada BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); //Definimos variables nombre, error y acumulador dándole valores por defecto String nombre=""; float acumulador=0; boolean error;
  • 8.
    Ahora bien, elproblema pidey SiPor usuario ingresa producesu el otro lado, desde luego un Agregamos si entre llaves que Colocaremos se una cadena EnYa ejercicio anteriorposibles Para identificadas las utilizamos el esto vamos a definir un do después solicitamos undatos por cuando debloque catch con las respectivo lectura de identificar Esta ocasión vamos a reservada error en la laal usuario entero se se le solicite palabra un valor una forma general paraa definir excepciones las opciones while con vamos identificar acciones acciones ense éste lo adecuadoobtendremosque try las a realizar que produce consola hasta si las la producirá la excepción los errores específicos. ahora elexcepciones. correspondientes. las bloque try-catch. pudierauna ingrese. excepción. NumberFormatException. excepción IOException. ocurrir una excepción.
  • 9.
    Ahora bien, elproblema pidey SiPor usuario ingresa producesu el otro lado, desde luego un Agregamos si entre llaves que Colocaremos se una cadena Para identificadas las posibles Ya esto vamos a definir un do después solicitamos undatos por cuando debloque catch con las respectivo lectura de identificar Esta ocasión vamos a reservada error en la laal usuario entero se se le solicite palabra un valor excepciones las opciones while con vamos a definir acciones acciones ense éste lo adecuadoobtendremosque try las a realizar que produce consola hasta si las la producirá la excepción los errores específicos. ahora el bloque try-catch. correspondientes. pudierauna ingrese. excepción. NumberFormatException. excepción IOException. ocurrir una excepción.
  • 10.
    Ahora bien, elproblema pidey SiPor usuario ingresa producesu el otro lado, desde luego un Agregamos si entre llaves que Colocaremos se una cadena Para identificadas las posibles Ya esto vamos a definir un do después solicitamos undatos por cuando debloque catch con las respectivo lectura de reservada error en la laal usuario entero se se le solicite palabra un valor excepciones las opciones while con vamos a definir acciones acciones ense éste lo adecuadoobtendremosque try las a realizar que produce consola hasta si las la producirá la excepción ahora el bloque try-catch. correspondientes. pudierauna ingrese. excepción. NumberFormatException. excepción IOException. ocurrir una excepción.
  • 11.
    Ahora bien, elproblema pidey Por otro lado, desde luego su Agregamos si entre llaves un Colocaremos se produce que Para identificadas las posibles Ya esto vamos a definir un do después debloque catch con las respectivo lectura de datos por error en la laal usuarioreservada se le solicite palabra un valor excepciones las opciones while con vamos a definir acciones acciones ense éste lo adecuadoobtendremosque try las a realizar que produce consola hasta si las la ahora el bloque try-catch. correspondientes. pudierauna ingrese. excepción. excepción IOException. ocurrir una excepción.
  • 12.
    Ahora bien, elproblema pidey Agregamos desde luego su Colocaremos entre llaves que Para identificadas las posibles Ya esto vamos a definir un do después debloque catch con las respectivo laal usuarioreservada se le solicite palabra un valor excepciones las opciones while con vamos a definir acciones acciones ense éste lo adecuado hasta que produce try las a realizar si las que ahora el bloque try-catch. correspondientes. pudierauna ingrese. excepción. ocurrir una excepción.
  • 13.
    Ahora bien, elproblema pidey Agregamos desde luego su Colocaremos entre llaves que Para esto vamos a definir un do después debloque catch con las respectivo laal usuarioreservada se le solicite palabra un valor while con las opciones acciones acciones ense éste lo adecuado hasta que produce try las a realizar si las que correspondientes. pudierauna ingrese. excepción. ocurrir una excepción.
  • 14.
    Ahora bien, elproblema pidey Agregamos desde luego su Colocaremos entre llaves que Para esto vamos a definir un do después debloque catch con las respectivo laal usuarioreservada se le solicite palabra un valor while con las opciones acciones acciones ense éste lo adecuado hasta que produce try las a realizar si las que correspondientes. pudierauna ingrese. excepción. ocurrir una excepción. //Iniciamos el bloque que podrá producir errores, sólo para el nombre try { System.out.println("Nombre:?"); nombre = br.readLine();}
  • 15.
    Ahora bien, elproblema pide que Agregamos desde luego su Para esto vamos a definir un do respectivo bloque catch con las se le solicite al usuario un valor while con las opciones acciones a realizar que éste lo adecuado hasta si se produce correspondientes. una ingrese. excepción. //Iniciamos el bloque que podrá producir errores, sólo para el nombre try { System.out.println("Nombre:?"); nombre = br.readLine();}
  • 16.
    Ahora bien, elproblema pide que Agregamos desde luego su Para esto vamos a definir un do respectivo bloque catch con las se le solicite al usuario un valor while con las opciones acciones a realizar que éste lo adecuado hasta si se produce correspondientes. una ingrese. excepción. //Iniciamos el bloque que podrá producir errores, sólo para el nombre try { System.out.println("Nombre:?"); nombre = br.readLine();} catch (IOException ex) {ex.printStackTrace(System.err);}
  • 17.
    Ahora bien, elproblema pide que Para esto vamos a definir un do se le solicite al usuario un valor while con las opciones adecuado hasta que éste lo correspondientes. ingrese. //Iniciamos el bloque que podrá producir errores, sólo para el nombre try { System.out.println("Nombre:?"); nombre = br.readLine();} catch (IOException ex) {ex.printStackTrace(System.err);}
  • 18.
    Para esto vamosa definir un do while con las opciones correspondientes. //Iniciamos el bloque que podrá producir errores, sólo para el nombre try { System.out.println("Nombre:?"); nombre = br.readLine();} catch (IOException ex) {ex.printStackTrace(System.err);}
  • 19.
    Para esto vamosa definir un do while con las opciones correspondientes. //Iniciamos el bloque que podrá producir errores, sólo para el nombre try { System.out.println("Nombre:?"); nombre = br.readLine();} catch (IOException ex) {ex.printStackTrace(System.err);} //iniciamos una iteración del 0 al 9 for(int i=0;i<10;i++){ error=false; //iniciamos el bloque do{} while(); que se repetirá en caso de error do{ error=false;
  • 20.
    Iniciamos el siguientebloque trycatch para NumberFormatException.
  • 21.
    Iniciamos el siguientebloque trycatch para NumberFormatException. //iniciamos el bloque try que podrá dar error de conversión numérica try{ //ponemos i+1 entre (), caso contrario se concatenarán como texto System.out.print("Examen "+(i+1)+"? "); acumulador+=Float.parseFloat(br.readLine()) ;Como por defecto la categoría es A, revisamos si aumentamos a B o C if(edad>25){categoria='B';} if(edad>50){categoria='C';} }
  • 22.
    Adjuntamos también elcatch Colocamos su respectivo catch respectivo por siel resultado y lo Redondeamos se produce una con las acciones a realizar si se Calculamos el promedio. IOException y cerramos el do imprimimos en pantalla. produce la excepción. while.
  • 23.
    catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} Adjuntamostambién el catch Colocamos su respectivo catch respectivo por siel resultado y lo Redondeamos se produce una con las acciones a realizar si se Calculamos el promedio. IOException y cerramos el do imprimimos en pantalla. produce la excepción. while.
  • 24.
    catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} Adjuntamostambién el catch respectivo por siel resultado y lo Redondeamos se produce una Calculamos el promedio. IOException y cerramos el do imprimimos en pantalla. while.
  • 25.
    Adjuntamos también elcatch respectivo por siel resultado y lo Redondeamos se produce una Calculamos el promedio. IOException y cerramos el do imprimimos en pantalla. while. catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} catch(IOException ex){ex.printStackTrace();System.exit(-1);} }while (error); }
  • 26.
    Redondeamos el resultadoy lo Calculamos el promedio. imprimimos en pantalla. catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} catch(IOException ex){ex.printStackTrace();System.exit(-1);} }while (error); }
  • 27.
    Redondeamos el resultadoy lo Calculamos el promedio. imprimimos en pantalla. catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} catch(IOException ex){ex.printStackTrace();System.exit(-1);} }while (error); } //Tenemos lista la suma parcial y calculamos su promedio. acumulador/=10;
  • 28.
    Redondeamos el resultadoy lo imprimimos en pantalla. catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} catch(IOException ex){ex.printStackTrace();System.exit(-1);} }while (error); } //Tenemos lista la suma parcial y calculamos su promedio. acumulador/=10;
  • 29.
    Redondeamos el resultadoy lo imprimimos en pantalla. catch(NumberFormatException ex) {System.out.println("Error, ingresar denuevo");error=true;} catch(IOException ex){ex.printStackTrace();System.exit(-1);} }while (error); } //Tenemos lista la suma parcial y calculamos su promedio. acumulador/=10; //Redondeamos el resultado a dos digitos. acumulador=(float)Math.round(acumulador*100 )/100; System.out.println(nombre+", tu promedio es de: "+acumulador); System.exit(0);}}
  • 30.
    Utilizando JCreator ejecutaremos nuestromain y obtendremos un resultado como el siguiente…
  • 31.
    Bueno compañero, estofue todo por Nos vemos en que la solución ahora, espero el siguiente de ejercicio. Hasta pronto. este ejercicio te haya sido clara y provechosa.
  • 32.
    Nos vemos enel siguiente ejercicio. Hasta pronto.