Fatorial (especificar...)

3 respostas
silverzoin

Galera, desculpe, sei que existem vários tópicos sobre como escrever fatorial em java…
… mas to com um pequeno problema, só queria entender o que foi feito nesse código (especificamente).
:?

int fat=1, i;
	for (i = 1; i <= 10; i = i + 1){
	fat = fat * i;
	System.out.println("O fator de "+i+" = "+fat);
	}

tipo… o que vai ser executado primeiro?.. como??.. :?: :?: :?:

desde já agradeço a todos! 8)

3 Respostas

M

// Aloca 2 espaco na memoria com o nome de fat e i atribuindo o valor 1 para fat

int fat=1, i;
// Esse for vai fazer um loop tudo que estiver dentro da { } vai rodar neste caso 10 vezes
// Dica… quando for fazer i = i + 1, troca por i++ faz a mesma coisa, mas deixa o codigo mais bonito :slight_smile:

for (i = 1; i <= 10; i = i + 1){

// vai multiplicar o valor de fat (que comecou com 1 e multiplicar por i ( i na primeira vez vai ter o valor de 1 na segunda de 2 e por ai vai ate chegar a 10 ) e guardar o resultado na variavel fat

fat = fat * i;

// vai mostra na tela 10 veze (pois ainda esta dentro do bloco do for a mensagem: "O fator de “+i+” = “+fat” " sendo que i vai de 1 a 10 e fat será o resultado da multiplicacao.

System.out.println("O fator de “+i+” = "+fat);

}

Qualquer duvida post ai!!!

Abraço

silverzoin

sim eu sei o que ele exatamente faz… o que eu não entendi foi a equação…
exemplo:

se i=i+1 e fat=1… então fat=1*1 = 1, então fatorial de 1 = 1…
depois… como vai ser…? o que vai indo acontecendo???.. :frowning: :?

D

silverzoin:
sim eu sei o que ele exatamente faz… o que eu não entendi foi a equação…
exemplo:

se i=i+1 e fat=1… então fat=1*1 = 1, então fatorial de 1 = 1…
depois… como vai ser…? o que vai indo acontecendo???.. :frowning: :?

[color=green]Olá.

Seguinte…
A variável fat inicia em 1, obtendo assim o Fatorial de 1 = 1, através de fat = 1 * 1;

Os próximos valores serão o resultado de Fatorial N - 1 * N …

Por exemplo…

Fatorial de 2 é: Fatorial de 1 * 2…
Fatorial de 3 é: Fatorial de 2 * 3…

E assim por diante…

Até.
[/color]

Criado 19 de junho de 2008
Ultima resposta 20 de jun. de 2008
Respostas 3
Participantes 3