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

Erro em código

No código abaixo, apresenta erro na linha 7 (sysout(fatorial)), mas não identifico o erro.

public class ProvaFatorial {
    public static void main(String[] args) {
        int n = 5;
        if (n > 1) {
            for (int fatorial = 1; n != 0; n--)
                fatorial = fatorial * n;
-->                System.out.println(fatorial);
        } else {
            System.out.println(n + "! = 0");
        }
    }
}

Consegui resolver dessa forma, mas não entendi porque dava o erro acima.

public class ProvaFatorial {
    public static void main(String[] args) {
        int n = 5;
        int fatorial = 1;
        if (n > 1) {
            for (; n != 0; n--)
                fatorial = fatorial * n;
                System.out.println(fatorial);
        } else {
            System.out.println(n + "! = 0");
        }
    }
}

Abraços!

2 respostas

Desculpe. Parece que coloquei no fórum errado. Era duas ou três aulas mais na frente, mas ok!

solução!

Fala, Rodolfo! Tudo bem contigo?

Na linha do for faltou abrir chaves no final

for (int fatorial = 1; n != 0; n--) {

E logo após o System.out.println(fatorial); fechar essas chaves

        int n = 5;
        if (n > 1) {
            for (int fatorial = 1; n != 0; n--) {
                fatorial = fatorial * n;
                System.out.println(fatorial);
            }
        } else {
            System.out.println(n + "! = 0");
        }

Feito isso, é só rodar!!!

Espero ter ajudado, Rodolfo!

Um abraço e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software