import java.util.Scanner;
public class CuentaBancaria {
private String nombreCliente;
private String tipoCuenta;
private double saldo;
// Constructor para inicializar la cuenta
public CuentaBancaria(String nombre, String tipo, double saldoInicial) {
this.nombreCliente = nombre;
this.tipoCuenta = tipo;
this.saldo = saldoInicial;
}
// Método para consultar el saldo
public void consultarSaldo() {
System.out.println("El saldo actualizado es: " + saldo + " $");
}
// Método para retirar dinero
public void retirar(double cantidad) {
if (cantidad > saldo) {
System.out.println("Saldo insuficiente");
} else {
saldo -= cantidad;
System.out.println("Retiro exitoso. Saldo restante: " + saldo + " $");
}
}
// Método para depositar dinero
public void depositar(double cantidad) {
saldo += cantidad;
System.out.println("Depósito exitoso. El saldo actualizado es: " + saldo + " $");
}
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
// Obtener información del cliente (puedes personalizar esto)
System.out.print("Ingrese el nombre del cliente: ");
String nombre = teclado.nextLine();
System.out.print("Ingrese el tipo de cuenta (e.g., Corriente, Ahorros): ");
String tipo = teclado.nextLine();
System.out.print("Ingrese el saldo inicial: ");
double saldoInicial = teclado.nextDouble();
teclado.nextLine(); // Consumir el salto de línea
// Crear la cuenta bancaria
CuentaBancaria cuenta = new CuentaBancaria(nombre, tipo, saldoInicial);
int opcion = 0;
while (opcion != 9) {
// Mostrar menú de opciones
System.out.println("\n** Escriba el número de la opción deseada **");
System.out.println("1 - Consultar saldo");
System.out.println("2 - Retirar");
System.out.println("3 - Depositar");
System.out.println("9 - Salir");
opcion = teclado.nextInt();
teclado.nextLine(); // Consumir el salto de línea
switch (opcion) {
case 1:
cuenta.consultarSaldo();
break;
case 2:
System.out.print("¿Cuánto deseas retirar?: ");
double cantidadRetiro = teclado.nextDouble();
teclado.nextLine(); // Consumir el salto de línea
cuenta.retirar(cantidadRetiro);
break;
case 3:
System.out.print("¿Cuánto deseas depositar?: ");
double cantidadDeposito = teclado.nextDouble();
teclado.nextLine(); // Consumir el salto de línea
cuenta.depositar(cantidadDeposito);
break;
case 9:
System.out.println("¡Gracias por usar nuestros servicios!");
break;
default:
System.out.println("Opción inválida");
}
}
teclado.close();
}
}
Mejoras Clave:
Clase CuentaBancaria:
Encapsula los datos de la cuenta (nombre, tipo, saldo) y las operaciones relacionadas (consultar, retirar, depositar). Hace el código más organizado y reutilizable. Constructor:
Inicializa la cuenta con los datos del cliente al crear un objeto CuentaBancaria. Métodos:
consultarSaldo, retirar, depositar: Realizan las operaciones bancarias básicas. El método retirar verifica si hay saldo suficiente antes de permitir el retiro. main:
Pide al usuario la información de la cuenta. Crea un objeto CuentaBancaria. Usa un bucle while para mostrar el menú repetidamente hasta que el usuario elija salir. Llama a los métodos de la clase CuentaBancaria para realizar las operaciones según la elección del usuario. Cómo usar este código:
Compila: Guarda el código como "CuentaBancaria.java" y compílalo usando un compilador Java (como javac CuentaBancaria.java). Ejecuta: Ejecuta el programa compilado (por ejemplo, java CuentaBancaria). Interactúa: Sigue las instrucciones en pantalla para ingresar los datos de la cuenta y realizar operaciones. ¡Personaliza y Expande!
Agrega más funcionalidades, como transferencias entre cuentas, cálculo de intereses, etc. Implementa manejo de errores más robusto. Considera usar una interfaz gráfica para una mejor experiencia de usuario.