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 Java

Me gusta hacerlo en diferentes métodos de la clase para poder tener módulos

import java.util.Scanner;

public class Banco {
    Scanner s = new Scanner(System.in);
    public static void main(String[] args) {
        String nombreCliente = "Piero Bastidas";
        String tipoCuenta = "Cuenta Corriente";
        double saldoDisponible = 2000;
        String bienvenidaTexto = """
                ¡Hola %s!
                Tipo de cuenta: %s
                Saldo disponible: %.2f
                """.formatted(nombreCliente, tipoCuenta, saldoDisponible);
        int opcion;

        System.out.println("/////Bienvenido a RenzoCorp//////");
        System.out.println(bienvenidaTexto);

        Banco menu = new Banco();
        menu.menuPrincipal(saldoDisponible);
    }

    private void menuPrincipal(double saldoDisponible){
        int opcion = 0;
        while ( opcion != 4 ){
            String menu = """
                    ** Escribe el número de opción deseada **
                    1. Consultar saldo
                    2. Retirar
                    3. Depositar
                    4. Salir
                    """;
            System.out.println(menu);
            opcion = obtenerOpcion();

            switch (opcion){
                case 1:
                    obtenerSaldo(saldoDisponible);
                    break;
                case 2:
                    saldoDisponible = retirarSaldo(saldoDisponible);
                    break;
                case 3:
                    saldoDisponible = depositarSaldo(saldoDisponible);
                    break;
                default:
                    System.out.println("Opción no válida");
            }
        }
        System.out.println("¡Gracias por preferir Renzo corp!");
    }
    private int obtenerOpcion(){
        int output;
        System.out.println("Ingresa tu opción escogida: ");
        output = s.nextInt();
        return output;
    }
    private void obtenerSaldo(double saldoDisponible){
        System.out.println("Tu saldo disponibles es "+ saldoDisponible);
    }
    private double depositarSaldo(double saldoDisponible){
        double nuevoSaldo = 0;
        System.out.println("Ingresa el saldo a depositar: ");
        nuevoSaldo = s.nextDouble();
        if (nuevoSaldo > 0){
            saldoDisponible += nuevoSaldo;
            System.out.println("Tu nuevo saldo es: "+saldoDisponible);
            return  saldoDisponible;
        } else {
            System.out.println("Ingresa un monto válido");
            return depositarSaldo(saldoDisponible);
        }
    }
    private double retirarSaldo(double saldoDisponible){
        double nuevoSaldo = 0;
        System.out.println("Ingresa el monto a retirar: ");
        nuevoSaldo = s.nextDouble();
        if (nuevoSaldo > 0 && nuevoSaldo <= saldoDisponible){
            saldoDisponible = saldoDisponible - nuevoSaldo;
            System.out.println("Has retirado "+nuevoSaldo+" soles. Tu nuevo saldo es: "+saldoDisponible);
            return  saldoDisponible;
        } else {
            System.out.println("Ingresa un monto válido");
            return retirarSaldo(saldoDisponible);
        }
    }
}
1 respuesta

Hola Renzo, espero que estés bien

Considero su código muy bueno, en este momento no veo puntos de mejora. ¡Continúa con sus estudios y éxito en su carrera!

Gracias por compartir tu ejercício práctico con nosotros! Tu contribución es fundamental para el crecimiento de nuestra comunidad en Alura. Sigue comprometido y no dudes en regresar al foro en caso que tengas alguna duda o dificultad.

¡Abrazos y buenos estudios!

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