Estou tentando efectuar um programa que me calcule o factorial entre 2 valores
Não pretendo obter a função através de API, mas sim através de ciclos for. Será que é possível
Comecei por :
for(long n = 1, factorial = 1; n < 10; n = n + 1);
Contudo a partir deste código não consigo ir mais além, pois não tenho ideia de como fazer o factorial, ou seja:
3! = (2!) * 3 ou seja n! = (n-1)! * n
Ainda estou no início do JAva e estou tentando compactar os conhecimentos
Estou usando um editor de texto e terminal em meu MAc
Acreditem que vale a pena começar e esforçar por este método pois os erros de sintaxe aparecem e somos forçados a perceber tudo. Para mim tem valido o esforço.
Nota: utilizei long , pois a partir de alguns números ultrapassa o valor que a variável pode suportar e dará erros.
n1 -> nº final
n2 -> nº inicial
fat = 1 // assume o facturial de zero = 1 (Eu assumo)
Para i igual ao nº final até ao nº inicial, diminuindo 1
factorial = fat * número.
No seu exemplo ficaria entre 4 e 10
n1 = 10
n2 = 4
10987654
Estou certo???
Desculpe-me toda esta “ignorância” mas não gosto de ficar incomodando o forum e assim fico com a certeza de que compreendi e este post fica encerrado
e disponível para outros .
[quote=jazz57][quote=cvinicios]Sim N1 é o N° Final e N2 é o inicial
fat tem que ser 1 pois uma multiplicação por 0 vai dar zero sempre e zero não tem fatorial.
t+[/quote]
Obrigado mais uma vez…
Assim, posso avançar para os objectos…
Caminho bravo, mas se faz caminhando… com o vosso apoio
Abraço[/quote]
Mais uma vez desculpe o incómodo…
Voltando ao meu código, como seria possível obter uma resolução ?
A sua solução é muito funcional, mas eu pensei em aplicar um “for” que inicie uma variável n como 1 indo até 15 (por exemplo) e sendo “fat” como resultado, como concluiria a questão?
Se tiver paciência , agradeço a sua indicação e ideias