Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

Desafio: Acepto el desafio!

Le hice algo diferente, tambien le agregue un menu 2 para luego de consulta de saldo:

import java.util.Scanner;

public class ProgramaBancario {
    public static void main(String[] args) {
        String cliente= "Alex";
        double saldo= 20000;
        String tipoDeCuenta="Cuenta Corriente";
        Scanner teclado= new Scanner(System.in);
        int opcion=0;
        System.out.println("*************************");
        System.out.println(tipoDeCuenta+" de "+cliente);
        System.out.println("*************************");
        String menu= """
                    Por favor, selecciona una opción:
                    1-Consultar saldo
                    2-Retirar dinero
                    3-Depositar dinero
                    9-Salir
                    """;
        String menu2="""
                        1-Retirar Dinero
                        2-Depositar Dinero
                        9-Salir
                        """;
        while (opcion != 9){


            System.out.println(menu);
            opcion= teclado.nextInt();
            if(opcion==1){
                System.out.println("""
                Su saldo actual es de:
                $%1$f
                """.formatted(saldo,cliente));
                System.out.println("Que desea hacer?:");
                int opcion2=0;
                while(opcion2!=9){

                    System.out.println(menu2);
                    opcion2= teclado.nextInt();
                    if(opcion2==1){
                        if(saldo>0){
                            System.out.println("Tu saldo actual es de: $"+saldo+" pesos argentinos");
                            System.out.println("Cuanto dinero desea Retirar?");
                            double retiro= teclado.nextDouble();
                            saldo=saldo - retiro;

                            System.out.println("Ok");
                            System.out.println("Retiraste $"+ retiro + " pesos argentinos" );
                            System.out.println("Tu saldo actual es de:");
                            System.out.println("$"+saldo+" pesos argentinos");
                        }
                        else{
                            System.out.println("Su saldo es 0 o menor, no puede retirar dinero");
                        }

                    } else if (opcion2==2) {
                        System.out.println("Tu saldo actual es de: $"+saldo+" pesos argentinos");
                        System.out.println("Cuanto dinero desea depositar?:");
                        double deposito= teclado.nextDouble();
                        saldo=saldo+deposito;

                        System.out.println("""
                        Bien, depositaste $%1$f pesos argentinos
                        Tu saldo actual es de $%2$f pesos argentinos 
                        """.formatted(deposito,saldo));
                    }

                }

            }
            else if(opcion==2){
                if(saldo<=0){
                    System.out.println("Su saldo es menor a 0, no puede retirar dinero");
                }
                else{
                    System.out.println("Tu saldo actual es de: $"+saldo+" pesos argentinos");
                    System.out.println("Cuanto dinero desea Retirar?");
                    double retiro= teclado.nextDouble();
                    if(saldo<retiro){
                        System.out.println("Saldo insuficiente");
                        System.out.println("Su saldo actual es de: "+" $"+ saldo);
                    }
                    else {
                        saldo=saldo - retiro;
                        System.out.println("Ok");
                        System.out.println("Retiraste $"+ retiro + " pesos argentinos" );
                        System.out.println("Tu saldo actual es de:");
                        System.out.println("$"+saldo+" pesos argentinos");
                    }


                }


            }
            else if (opcion== 3){
                System.out.println("Tu saldo actual es de: $"+saldo+" pesos argentinos");
                System.out.println("Cuanto dinero desea depositar?:");
                double deposito= teclado.nextDouble();
                saldo=saldo+deposito;

                System.out.println("""
                        Bien, depositaste $%1$f pesos argentinos
                        Tu saldo actual es de $%2$f pesos argentinos 
                        """.formatted(deposito,saldo));

            } else if (opcion==9) {
                System.out.println("Gracias por usar nuestro programa bancario!");

            }
        }

    }
}
2 respuestas

Falta la validacion de retirar saldo en la opcion 2 de menu 2 (luego de consultar saldo), no puedo editarlo porque sobre pasa los 5000 caracteres, pero el codigo seria asi:

while(opcion2!=9){

                    System.out.println(menu2);
                    opcion2= teclado.nextInt();
                    if(opcion2==1){
                        if(saldo>0){
                            System.out.println("Tu saldo actual es de: $"+saldo+" pesos argentinos");
                            System.out.println("Cuanto dinero desea Retirar?");
                            double retiro= teclado.nextDouble();
                            if(saldo<retiro){
                                System.out.println("Saldo insuficiente");
                                System.out.println("Su saldo actual es de: "+" $"+ saldo);
                            }
                            else {
                                saldo=saldo - retiro;

                                System.out.println("Ok");
                                System.out.println("Retiraste $"+ retiro + " pesos argentinos" );
                                System.out.println("Tu saldo actual es de:");
                                System.out.println("$"+saldo+" pesos argentinos");
                            }

                        }
                        else{
                            System.out.println("Su saldo es 0 o menor, no puede retirar dinero");
                        }

                    } else if (opcion2==2) {
                        System.out.println("Tu saldo actual es de: $"+saldo+" pesos argentinos");
                        System.out.println("Cuanto dinero desea depositar?:");
                        double deposito= teclado.nextDouble();
                        saldo=saldo+deposito;

                        System.out.println("""
                        Bien, depositaste $%1$f pesos argentinos
                        Tu saldo actual es de $%2$f pesos argentinos 
                        """.formatted(deposito,saldo));
                    }

                }

            }

¡Hola Alexander! ¿Cómo estás?

Gracias por tu aporte en el foro. Tu 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!