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

Desafio

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // Variables
        String cliente = "Tony Stark";
        String tipoDeCuenta = "Corriente";
        double saldo = 1599.99;
        double depositar = 0;
        double retirar = 0;
        int seleccion = 0;
        boolean continuar = true;
        Scanner teclado = new Scanner(System.in);
        // Mensaje con la informacion del cleinte y opciones disponibles
        String infoCliente = """
                *******************************
                
                Nombre del cliente: %s
                Tipo de cuenta: %s
                Saldo disponible: $%.2f
                
                *******************************
                """;
        String opciones = """
                ** Escriba el numero de la opcion deseada **
                1 - Consultar saldo
                2 - Retirar
                3 - Depositar
                9 - Salir
                """;
        // Imprimiendo en pantalla mensajes de inicio con detalles del cliente
        System.out.println(infoCliente.formatted(cliente, tipoDeCuenta, saldo));
        // Inicio de funcionabilidad del programa bancario con el ciclo while
        while (continuar) {
            System.out.println(opciones);
            // Verificando que la opcion ingresada sea un numero entero
            while (!teclado.hasNextInt()) {
                System.out.println("Operacion invalida, porfavor escribe un numero entero");
                System.out.println(opciones);
                teclado.next();
            }
            seleccion = teclado.nextInt();
            switch (seleccion) {
                case 1: {
                    System.out.println("Su saldo es: $%.2f".formatted(saldo));
                    break;
                }
                case 2: {
                    System.out.println("Cual es el valor deseado para retirar?");
                    retirar = teclado.nextDouble();
                    if (retirar < 0) {
                        System.out.println("Operacion invalida");
                        break;
                    } else if (retirar > saldo) {
                        System.out.println("Su saldo es insuficiente");
                        break;
                    } else {
                        saldo -= retirar;
                        System.out.println("El saldo restante es: $%.2f".formatted(saldo));
                        break;
                    }
                }
                case 3: {
                        System.out.println("Cual va a ser el valor que vas a depositar?");
                        depositar = teclado.nextDouble();
                    if (depositar < 0) {
                        System.out.println("Operacion invalida");
                        break;
                    } else {
                        saldo += depositar;
                        System.out.println("El saldo actualizado es: $%.2f".formatted(saldo));
                        break;
                    }
                }
                case 9: {
                    System.out.println("Finalizando el programa. Muchas gracias por usar nuestros servicios");
                    // Cambiando condicion para terminar el programa
                    continuar = false;
                }
                // Mensaje de error si se escribe una opcion fuera de las permitidas
                default:
                    System.out.println("Opcion invalida, seleccione otra opcion");
                    break;
            }
        }
    }
}
1 respuesta

¡Hola! ¿Cómo estás?

Gracias por tu aporte en el foro. Su contribución es esencial para el crecimiento de nuestra comunidad en Alura.

Sigue así y no dudes en volver al foro si tienes alguna pregunta o dificultad.

Abrazos y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!