1
resposta

Exercício - Fatoriais (NÃO ENTENDI)

void main() {
  int soma = 0;
  int fatorial = 1;

  for (int i = 1; i <= 15; i++) {
    fatorial *= i;
    soma += fatorial;
  }

  print("O resultado é $soma");  
}

Para que serve a linha - fatorial *=i ? e soma += fatorial ?

1 resposta

Oi Rafael, tudo bem? Vamos lá.

Lembra que o fatorial de um número é a multiplicação desse número com os anteriores a ele? Vejamos alguns exemplos:

  • O fatorial de 3 é: 3 * 2 * 1, que dá: 6.
  • O fatorial de 4 é: 4 * 3 * 2, que dá: 24
  • O fatorial de 5 é: 5 * 4 * 3 * 2 * 1, que dá: 120

Mas na programação, a gente não consegue multiplicar facilmente, usando as estruturas bases da linguagem dessa forma como na matemática. Então, o que fazemos? Passo a passo:

1 - Multiplicamos o fatorial por ele mesmo substraindo 1 ou pode-se fazer como tá no código, multiplicamos o número fatorial por todos que vem antes dele.

Mas isso só guarda uma das multiplicações e precisamos do produto de todas. Isso nos leva para o passo 2:

2 - Vamos acumulando a soma das multiplicações para ter o acumulado de todas as multiplicações.

Entendeu?