1
resposta

Dei uma incrimentada no exercicio 1

import java.util.Scanner;

public class ExercicioDivisao {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

    while (true) {
        System.out.println("Informe o numerador: ");
        int numerador = scanner.nextInt();

        System.out.println("Informe o denominador: ");
        int denominador = scanner.nextInt();

        try {
            int resultado = numerador / denominador;
            System.out.println("Resultado da divisão: " + resultado);
        } catch (ArithmeticException e) {
            System.out.println("Erro: Divisão por zero não permitida");
        }

        System.out.println("Deseja fazer outra divisão? (s/n): ");
        String resposta = scanner.next();

        if (resposta.equalsIgnoreCase("n")) {
            System.out.println("Saindo do programa...");
            break;
        }
    }
    scanner.close();
}

}

1 resposta

Oii Pedro, tudo bem?

Realmente, ficou muito bom! Você foi além adicionando o loop while (true) com controle de repetição — isso deixa o programa muito mais interativo e próximo de algo real.

O tratamento do ArithmeticException está correto, o fechamento do Scanner com scanner.close() no final também é uma boa prática que vale destacar.

Uma consideração: caso o usuário digite um valor não numérico (como uma letra) no lugar do numerador ou denominador, o scanner.nextInt() vai lançar uma InputMismatchException e o programa vai encerrar com erro. Vale experimentar adicionar um segundo catch para tratar esse caso:

} catch (InputMismatchException e) {
    System.out.println("Erro: informe apenas números inteiros.");
    scanner.nextLine(); // limpa o buffer do scanner
}

Conte com a Alura para evoluir seus estudos. Fico à disposição.

Bons estudos!

Sucesso

Imagem da comunidade