Está en la página 1de 16

PROGRAMACION DE ERORRES

package programacionerrores;

import javax.swing.JOptionPane;

public class ProgramacionErrores {

public static void main(String[] args) {

double a = 0, b = 0;

try {

a = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para a 1"));

b = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para b 1"));

System.out.println("a= " + a + "\nb= " + b + " y su division es= " + (a / b));

} catch (NumberFormatException e) {

do {

try {

a = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para a 2"));

b = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para b 2"));

System.out.println("a= " + a + "\nb= " + b + " y su division es= " + (a / b));

} catch (NumberFormatException ex) {

} catch (ArithmeticException exc) {

do {

try {
b = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para b 3"));

} catch (NumberFormatException ex) {

} while (b == 0);

System.out.println("a= " + a + "\nb= " + b + " y su division es= " + (a / b));

} while (b == 0);

} catch (ArithmeticException e) {

do {

try {

b = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para b 3"));

} catch (NumberFormatException ex) {

} while (b == 0);

System.out.println("a= " + a + "\n b= " + b + " y su division es= " + (a / b));

}
}

PARA IMPORTAR PAQUETES Y JOPTIONPANE

import Complemento.Nodo;

import javax.swing.JOptionPane;

protected = Los atributos son accedidos directamente por todas las clases que esten en el mismo
paquete

private = Los atributos son accedidos directamente solo por la misma clase

public = Los actributos son accedidos directamente por todas las clases del proyecto

ESTRUCTURAS DINAMICAS

public class EstrcturasDinamicas {

static Nodo origenCola = null;

static Nodo ultimoValor = null;

static Nodo origenPila = null;

static Nodo origenListaCircular = null;

static Nodo ultimoValorListaCircular = null;

static int tamano = 0;

public static void anadirListaCircular(int a) {

Nodo nuevoValor = new Nodo();

nuevoValor.setValor(a);

nuevoValor.setSig(origenListaCircular);
if (origenListaCircular == null) {

origenListaCircular = ultimoValorListaCircular = nuevoValor;

} else {

ultimoValorListaCircular.setSig(nuevoValor);

ultimoValorListaCircular = nuevoValor;

tamano++;

public static void anadirCola(int a) {

Nodo nuevoValor = new Nodo();

nuevoValor.setValor(a);

if (origenCola == null) {

origenCola = ultimoValor = nuevoValor;

} else {

ultimoValor.setSig(nuevoValor);

ultimoValor = nuevoValor;

public static void AnadirPila(int a) {

Nodo nuevoValor = new Nodo();

nuevoValor.setValor(a);

if (origenPila == null) {

origenPila = nuevoValor;

} else {

nuevoValor.setSig(origenPila);
origenPila = nuevoValor;

public static void recorrer(Nodo r) {

while (r != null) {

System.out.print("[ " + r.getValor() + " ] ->");

r = r.getSig();

public static void recorrerListaCircular(Nodo r) {

for (int i = 0; i < 4; i++) {

for (int j = 0; j < tamano; j++) {

System.out.print("[ " + r.getValor() + " ] ->");

r = r.getSig();

System.out.println();

public static void main(String[] args) {

do {

int a = Integer.parseInt(JOptionPane.showInputDialog("Digite un valor"));

// anadirCola(a);
// AnadirPila(a);

anadirListaCircular(a);

} while (JOptionPane.showConfirmDialog(null, "desea ingresar mas valores?") ==


JOptionPane.YES_OPTION);

// recorrer(origenCola);

// System.out.println();

// recorrer(origenPila);

System.out.println();

recorrerListaCircular(origenListaCircular);

METODOS QUE SE PUEDEN UTILIZAR EN UNA INTERFACE

public double calcular(Object o); Este es el método que se coloca en la Interface


@Override
public double calcular(Object o) {
EmpleadoObra eo = (EmpleadoObra) o;
double pago = 0;
double TotalPagar = 0;
pago = eo.getSueldo() * 0.08;
TotalPagar = eo.getSueldo() - pago;
return TotalPagar;
}
public void arrendar(Object o);
@Override
public void arrendar(Object o) {

Casa c = (Casa) o;

System.out.println(" Se arrienda casa: ");


c.imprimir(c);

System.out.println(" El precio de arriendo de la casa es el siguiente: " +


c.getValorArriendo());

System.out.println(" El dueno actual de la casa es: ");


c.getArrendatario().imprimir(c.getArrendatario());

int a = JOptionPane.showConfirmDialog(null, "¿Desea tomar en arriendo la casa? ",


"Alquiler", JOptionPane.YES_NO_OPTION);

if (a == JOptionPane.YES_OPTION) {

c.setArrendador(c.getArrendador().crear());

System.out.println(" El arrendador actual de la casa es: ");


c.getArrendador().imprimir(c.getArrendador());

}
public void vender(Object o);
@Override
public void vender(Object o) {
Casa c = (Casa) o;

System.out.println(" Se vende casa: ");


c.imprimir(c);

System.out.println(" El precio de venta de la casa es el siguiente: " +


c.getValorVenta());

System.out.println(" El dueno actual de la casa es: ");


c.getArrendatario().imprimir(c.getArrendatario());

int a = JOptionPane.showConfirmDialog(null, "¿Desea comprar la casa? ", "Compra",


JOptionPane.YES_NO_OPTION);

if (a == JOptionPane.YES_OPTION) {

JOptionPane.showMessageDialog(null," A continuacion digite los datos del nuevo


dueño ");
c.setArrendatario(c.getArrendatario().crear());

System.out.println(" El comprador actual de la casa es: ");


c.getArrendatario().imprimir(c.getArrendatario());

}
public void prestar(Object o);
@Override
public void prestar(Object o) {
Revista r = (Revista) o;
int p = 0;
do {

try {
p = Integer.parseInt(JOptionPane.showInputDialog(" Unidades disponibles " +
r.existencias,
" \n Digite las unidades a prestar"));
} catch (Exception e) {
// TODO: handle exception
}
} while (p > r.existencias);
r.existencias = r.existencias - p;
System.out.println(r);

}
public void devolver(Object o);
@Override
public void devolver(Object o) {
Revista r = (Revista) o;
int p = 0;
try {
p = Integer.parseInt(JOptionPane.showInputDialog("Digite las unidades a
devolver"));
} catch (Exception e) {
// TODO: handle exception
}
r.existencias = r.existencias + p;
System.out.println(r);

public double sumar(double a, double b);

public double restar(double a, double b);

public double multiplicar(double a, double b);

public double dividir (double a, double b);

public double potencia (double b, double e);


@Override
public double sumar(double a, double b) {

return a + b;
}

@Override
public double restar(double a, double b) {

return a - b;
}

@Override
public double multiplicar(double a, double b) {
return a * b;
}

@Override
public double dividir(double a, double b) {

if (b == 0) {

do {
b = Double.parseDouble(JOptionPane.showInputDialog("Digite un valor entero para b \n
Diferente de cero "));

} while (b == 0);

return a / b;
}

@Override
public double potencia(double b, double e) {
if (b == 0 && e == 0) {
System.out.println("Error");
return 0.0;
}

if (b == 0) {
return 0;
}
if (e == 0) {
return 1;
}

double c = 1; //2 ^2 = 1*2*2=4 x^-2= 1/x^2 1/2=0,5 0,5/2=0,25


1/4=0,25
if (e > 0) {
while (e != 0) {
c = c * b;
e--;
}
} else {
while (e != 0) {
c = c / b;
e++;
}
}
return c;
}

}
public double acelar(Object o);
@Override

public double acelar(Object o) {

double aceleracion = 0;

Carro c = (Carro) o;

boolean bol = true;


do {
try {

c.setVelocidad(Double.parseDouble(JOptionPane.showInputDialog("Ingrese su
velocidad en Km/h ")));

bol = false;

} catch (Exception e) {

} while (bol);

bol = true;

do {
try {

c.setTiempo(Double.parseDouble(JOptionPane.showInputDialog(" Ingrese su
tiempo en h ")));

bol = false;

} catch (Exception e) {

} while (bol);
if (c.getVelocidad () >= velocidadMaxima){

System.out.println(" Senor conductor deberia reducir su velocidad \n ya que supero


la velocidad maxima y podria sufrir un accidente ");

aceleracion = c.getVelocidad() / c.getTiempo();

System.out.println(

" Senor conductor la informacion de su carro a la hora de acelarar es la


siguiente: "
+ " \n Su velocidad fue: " + getVelocidad() + " Km/h "
+ " \n Su tiempo fue : " + getTiempo() + " h "
+ " \n Su aceleracion fue: " + aceleracion + " Km/h^2 "
);

return aceleracion;

}
public double frenar(Object o);
@Override

public double frenar(Object o) {

double velocidadFinal = 0;
Carro c = (Carro) o;

boolean bol = true;

do {
try {

c.setVelocidadFinal(Double.parseDouble(JOptionPane.showInputDialog("Ingrese su
velocidad a la hora de frenar o disminuirla en Km/h ")));

bol = false;

} catch (Exception e) {

} while (bol);

if (c.getVelocidadFinal() > 0 && c.getVelocidad()>=c.getVelocidadFinal() ) {

velocidadFinal = c.getVelocidad() - c.getVelocidadFinal();

} else if (c.getVelocidadFinal()>c.getVelocidad()){

velocidadFinal = c.getVelocidad();

System.out.println(" Senor conductor no se ha podida calcular la reduccion de su


velocidad \n porque el valor ingresado es incorrecto ");

} else {
velocidadFinal = 0;

System.out.println(" Senor conductor no se ha podida calcular la reduccion de su


velocidad \n porque el vehiculo puede estar en reposo ");

System.out.println(

" Senor conductor la informacion de su motocicleta a la hora de frenar es la


siguiente: "

+ "\n La velocidad inicial de su vehiculo fue: " + getVelocidad() + " Km/h "

+ " \n Su velocidad a la hora de frenar fue: " + getVelocidadFinal() + " Km/h "

+ " \n Su velocidad despues de frenar fue: " + velocidadFinal + " Km/h "
);

return velocidadFinal;

También podría gustarte