Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Desafio resolvido

import java.util.InputMismatchException;
import java.util.Scanner;

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

        try {
            System.out.print("Digite um numero: ");
            int numero = teclado.nextInt();
            int fatorial = 1;

            //calcular fatorial

            for (int i = 1; i <= numero; i++) {
                fatorial *= i;

            }
            System.out.println("O fatorial de " + numero + " é: " + fatorial);

        } catch (InputMismatchException e) {
            System.out.println("Erro ao calcular fatorial, digite apenas numero inteiro.");
        }

        teclado.close();
    }
}
2 respostas
solução!

Oi, Aldeny! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

O seu projeto tá bem organizado. O uso do for para calcular o fatorial ficou claro e funcional, e o tratamento de erro com InputMismatchException mostra uma preocupação importante em evitar entradas inválidas do usuário. Isso demonstra atenção com a experiência de quem executa o programa.

Uma dica interessante para o futuro é usar a estrutura while para repetir a leitura do número caso o usuário digite algo inválido. Isso permite que o programa continue funcionando sem precisar encerrar.


import java.util.Scanner;

public class Exemplo {
    public static void main(String[] args) {

        Scanner teclado = new Scanner(System.in);
        int numero = -1;

        while (numero < 0) {
            System.out.print("Digite um numero inteiro positivo: ");
            numero = teclado.nextInt();
        }

        System.out.println("Numero valido digitado: " + numero);
        teclado.close();
    }
}

O while continua pedindo um numero enquanto o valor for menor que zero, garantindo que o usuário digite um número válido antes do programa continuar.

Conteúdos relacionados
Alura

Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Oi, Lorena!

Muito obrigado pelo feedback e pela sugestão. Fico feliz em saber que a organização do código e o tratamento de erro foram bem avaliados.

Achei muito interessante a abordagem utilizando while para garantir uma entrada válida sem encerrar o programa. Com certeza é uma melhoria importante para a experiência do usuário.

Vou aplicar essa prática nos próximos exercícios.

Agradeço pela orientação!