Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Proyecto] Desafío: Aplicación Bancaria

Código

import java.util.Scanner;

public class AplicacionBancaria {
    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        double saldo = 1670;
        double deposito, retiro;
        int opcion = 0;
        String cliente = """
                ******************************************
                
                Nombre del cliente: Michael Jordan
                Tipo de cuenta: Corriente
                Saldo disponible: USD""" + saldo + """
                
                
                ******************************************
                """;
        String menu = """
                ** Escriba el número de la opción deseada **
                1 - Consultar saldo
                2 - Retirar
                3 - Depositar
                9 - Salir
                """;

        System.out.println(cliente);
        while(opcion != 9){
            System.out.printf(menu);
            opcion = teclado.nextInt();
            switch (opcion){
                case 1:
                    System.out.println("El saldo actualizado es: USD "+saldo);
                    break;

                case 2:
                    System.out.print("¿Cuál es el valor que deseas retirar?");
                    retiro = teclado.nextDouble();

                    if (retiro>0){
                        if (saldo>retiro){
                            saldo -=retiro;
                            System.out.println("Saldo restante: USD "+saldo);
                        } else{
                            System.out.println("Saldo insufucientes.");
                        }
                    } else{
                        System.out.println("No puede ingresar montos negativos. Intente de nuevo.");
                    }
                    break;

                case 3:
                    System.out.print("¿Cuál es el valor que deseas depositar?");
                    deposito = teclado.nextDouble();

                    if(deposito>0){
                        saldo +=deposito;
                        System.out.println("El saldo actualizado es: USD "+saldo);
                    } else{
                        System.out.println("No puede ingresar montos negativos. Intente de nuevo.");
                    }
                    break;

                case 9:
                    System.out.println("Finanlizando el programa. Muchas gracias por usar nuestros servicios.");
                    break;

                default:
                    System.out.println("La opción ingresada es invalida. Intenta de nuevo.");
                    break;
            }
        }
    }
}

Resultado - Consultar Saldo.

Consultando saldo

Resultado - Validación en valores negativos.

Valores negativos

Resultado - Retiro exitoso y Fondos insuficientes.

Retiro exitoso y fondos insuficientes

Resultado - Deposito

Deposito

Resultado - Saliendo del sistema

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

1 respuesta

¡Hola Estudiante, espero que estés bien!

Tu código para la aplicación bancaria parece estar funcionando correctamente en términos de lógica básica. Aquí tienes algunos comentarios y sugerencias para mejorarlo:

  1. Mensajes de Error: Asegúrate de que los mensajes de error sean claros y específicos. Por ejemplo, en lugar de "Saldo insufucientes", debería ser "Saldo insuficiente".

  2. Formato de Saldo: Podrías mejorar la presentación del saldo al mostrarlo con dos decimales siempre, por ejemplo, usando String.format("USD %.2f", saldo).

  3. Validación de Entradas: Considera agregar validación para asegurarte de que las entradas del usuario sean números válidos. Puedes usar un bloque try-catch para manejar excepciones como InputMismatchException.

  4. Cerrar el Scanner: Es una buena práctica cerrar el objeto Scanner al final del programa para liberar recursos. Puedes hacerlo con teclado.close(); justo antes de terminar el programa.

Espero que estas sugerencias te sean útiles. ¡Espero haber ayudado y buenos estudios!