lunes, 27 de enero de 2014

Unidad 2 Ejercicio 80: Clase cuenta corriente, paso de enteros a cadenas y empezando con excepciones

80. A Programar una clase de nombre CuentaCorriente que permita almacenar e interactuar con la cuenta bancaria de un cliente. Esta clase tendrá las siguientes propiedades, métodos y constructores:

Propiedades privadas:

- nombre, apellidos, dirección, teléfono, NIF de tipo String.
- saldo de tipo double.

Constructores:

- Constructor por defecto que no haga nada
- Constructor al que se le pasen como argumentos todas las propiedades que tiene la clase

Métodos públicos:

- sacarDinero: le resta al saldo una cantidad de dinero pasada como argumento.
- ingresarDinero: le añade al saldo una cantidad de dinero.
- consultarSaldo, consultarNombre……. devolverá cada uno de ellos el valor de su propiedad.
- establecerSaldo, establecerNombre….. asignará cada uno de ellos el valor de su propiedad.
- consultarCuenta: visualizará todos los datos de la cuenta.
- saldoNegativo: devolverá un valor lógico indicando si la cuenta está o no ennúmeros rojos.



package unidad2ejercicio80;
import java.util.*;
/**
*
* @author juan
*/
public class Unidad2Ejercicio80 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
      
         Scanner leo = new Scanner(System.in);
        /*
        CuentaCorriente uno,dos;
      
       
        uno = new CuentaCorriente();
        dos = new CuentaCorriente("pepito", "pérez", "Plaza de la legión","988221312","2121212W",212121);
       
        uno.consultarCuenta();
        dos.consultarCuenta();
        System.out.println("Introduzca el nuevo saldo");
        dos.establecerSaldo(leo.nextDouble());
        dos.consultarCuenta();
        */
     
       String prueba;
       boolean incorrecto=false;
      
       do
       {
          
        try
            {
                System.out.println("Introduzca la cantidad a convertir:");
                prueba = leo.nextLine();

                int prueba2 = Integer.parseInt(prueba);
                double prueba4 = Double.parseDouble(prueba);
                String prueba3;

                prueba3= Integer.toString(prueba2);
                System.out.println(prueba2);
                incorrecto=false;

            }
        catch (NumberFormatException e)
        {
            System.out.printf("error: Estás intentando convertir una cadena a número");
            incorrecto=true;
        }
        catch (Exception e){
                System.out.printf("error: "+e.getMessage());
                incorrecto=true;
            }

        }
       while(incorrecto);
}
}


package unidad2ejercicio80;

/**
*
* @author juan
*/
public class CuentaCorriente {
    private String nombre;
    private String apellidos;
    private String direccion;
    private String telefono;
    private String nif;
    private double saldo ;

    public CuentaCorriente(String nombre, String apellidos, String direccion, String telefono, String nif, double saldo) {
        this.nombre = nombre.trim();
        this.apellidos = apellidos.trim();
        this.direccion = direccion.trim();
        this.telefono = telefono.trim();
        this.nif = nif.trim();
        this.saldo = saldo;
    }

    public CuentaCorriente() {
        saldo=0;
    }
   
    public double ingresarDinero(double ingresarCantidad){
        saldo+=ingresarCantidad;//saldo = saldo -sacar;
        return saldo;
    }

    public String consultarApellidos() {
        return apellidos;
    }

    public void establecerApellidos(String apellidos) {
        this.apellidos = apellidos;
    }

    public String consultarDireccion() {
        return direccion;
    }

    public void establecerDireccion(String direccion) {
        this.direccion = direccion;
    }

    public String consultarNif() {
        return nif;
    }

    public void establecerNif(String nif) {
        this.nif = nif;
    }

    public String consultarNombre() {
        return nombre;
    }

    public void establecerNombre(String nombre) {
        this.nombre = nombre;
    }

    public double consultarSaldo() {
        return saldo;
    }

    public void establecerSaldo(double saldo) {
        this.saldo = saldo;
    }

    public String consultarTelefono() {
        return telefono;
    }

    public void establecerTelefono(String telefono) {
        this.telefono = telefono;
    }
   
    public void consultarCuenta()
    {
        System.out.printf("%n Nombre: %s,%n Apellidos: %s,%n Dirección: %s,%n Telf: %s,%n NIF: %s,%n Saldo: %f %n ",nombre,apellidos, telefono,direccion,nif,saldo);
    }
   
    public boolean saldoNegativo(){
        boolean retorno=false;
       
        if (saldo <0) retorno = true;
       
        return retorno;
    }
   
   
}