1
resposta

[Projeto] Interessante como Java lida com Divisão por 0 (double)

Achei interessante que ao realizar a divisão por 0 de dois números double, o retorno é Infinity / - Infinity. Particularmente acho uma solução bastante interessante da linguagem. Para que a divisão retornasse um erro, adicionei explicitamente uma excessão:

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

        System.out.println("\nExercício 1:");
        // Crie um programa simples que solicita dois números ao usuário e realiza a divisão do primeiro pelo segundo.
        // Utilize o bloco try/catch para tratar a exceção que pode ocorrer caso o usuário informe 0 como divisor.
        double num1 = input.nextDouble();
        double num2 = input.nextDouble();

        try {
            if (num2 == 0) {
                throw new ArithmeticException("Divisão por zero não é permitida.");
            } else {
                double num3 = num1 / num2;
                System.out.printf("%.2f dividido por %.2f é %.2f\n", num1, num2, num3);
            }
        } catch (ArithmeticException e) {
            System.err.println("Erro: " + e.getMessage());
        }
    }
}
1 resposta

Oi, Nícolas! Como vai?

Obrigada por compartilhar seu código com a comunidade Alura.

Achei bem interessante como você utilizou o bloco try/catch para lidar com a divisão por zero. Isso demonstra uma ótima prática no tratamento de erros e garante que seu programa tenha um comportamento previsível, mesmo em situações inesperadas. Além disso, gostei da clareza na mensagem de erro personalizada, o que melhora a experiência do usuário.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!