Operações Bancárias Simples com Switch
Explorando Desafios de Códigos Básicos em Java - 1/5
Descrição
Você está desenvolvendo um programa simples em Java para simular operações bancárias básicas. A aplicação deve permitir ao usuário realizar depósitos, saques e consultar o saldo em uma conta bancária virtual.
Entrada
-
O programa exibirá um menu com as seguintes opções:
- Depositar
- Sacar
- Consultar Saldo
- Encerrar
-
O usuário escolherá uma dessas opções digitando o número correspondente.
Saída
Utilizando um switch, o programa realizará a operação escolhida pelo usuário.
Se o usuário escolher:
- O programa solicitará o valor a ser depositado e atualizará o saldo. Além disso, deve imprimir o saldo atual com a mensagem
Saldo atual: {saldo com 1 casa decimal}
. - O programa solicitará o valor a ser sacado e verificará se há saldo suficiente. Sendo assim, deve imprimir
Saldo atual: {saldo com 1 casa decimal}
quando o saldo for suficiente eSaldo insuficiente.
- O programa apenas exibirá o saldo atual da conta:
Saldo atual: {saldo com 1 casa decimal}
. - O programa encerrará, imprimindo
Programa encerrado.
.
Exemplos
A tabela abaixo apresenta exemplos com alguns dados de entrada e suas respectivas saídas esperadas. Certifique-se de testar seu programa com esses exemplos e com outros casos possíveis.
Entrada | Saída |
---|---|
1 | |
50 | Saldo atual: 50.0 |
2 | Saldo insuficiente. |
100 | Programa encerrado. |
0 |
Entrada | Saída |
---|---|
3 | |
1 | Saldo atual: 0.0 |
550 | Saldo atual: 550.0 |
0 | Programa encerrado. |
Entrada | Saída |
---|---|
1 | |
1000 | Saldo atual: 1000.0 |
2 | Saldo atual: 500.0 |
500 | Programa encerrado. |
0 |
Resolução
import java.util.Scanner;
public class SimulacaoBancaria {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double saldo = 0;
boolean continuar = true;
while (continuar) {
int opcao = scanner.nextInt();
switch (opcao) {
case 1:
double deposito = scanner.nextDouble();
saldo += deposito;
System.out.printf("Saldo atual: %.1f\n", saldo);
break;
case 2:
double saque = scanner.nextDouble();
if (saque <= saldo) {
saldo -= saque;
System.out.printf("Saldo atual: %.1f\n", saldo);
} else {
System.out.println("Saldo insuficiente.");
}
break;
case 3:
System.out.printf("Saldo atual: %.1f\n", saldo);
break;
case 0:
System.out.println("Programa encerrado.");
continuar = false;
break;
default:
System.out.println("Opção inválida. Tente novamente.");
}
}
scanner.close();
}
}
Para encontrar outras soluções, verifique aqui.
Caso encontre algum erro ou tenha sugestões, clique aqui e abra uma issue no Github.