Pessoal estou com uma dúvida sobre uma função que mostra na tela o resultado fatorial que irá de 1 a 10. Segue o código abaixo.
[code]public class Programa {
public static void fatorar(int numero) {
int fator = 1;
for (int i = numero; i > 1; i–) {
fator *= i;
}
System.out.println(numero + "i = " + fator);
}
public static void main(String args[]) {
for (int x = 1; x <= 10; x++)
fatorar (x);
}
}[/code]
Funciona tranquilo, mas não entendi a variável numero da linha 02 e 07. Quando a JVM executa esse código a variável numero vai de 1 a 10.
Na main você tem um for, o qual tem a variável x que tem o valor que vai de 1 a 10 e é o valor de número.
Esse valor é passado para uma outra função (fatorar), a qual calcula o fatorial de um dado número.
Então funciona assim.
Na main tem essa iteração que roda os números de 1 a 10.
Para cada número é chamado o fatorar, passando o valor atual.
Lá é calculado o fatorial do número passado e printado na tela.
[quote=javahunter]Pessoal estou com uma dúvida sobre uma função que mostra na tela o resultado fatorial que irá de 1 a 10. Segue o código abaixo.
[code]public class Programa {
public static void fatorar(int numero) {
int fator = 1;
for (int i = numero; i > 1; i–) {
fator *= i;
}
System.out.println(numero + "i = " + fator);
}
public static void main(String args[]) {
for (int x = 1; x <= 10; x++)
fatorar (x);
}
}[/code]
Funciona tranquilo, mas não entendi a variável numero da linha 02 e 07. Quando a JVM executa esse código a variável numero vai de 1 a 10.
Queria sabe como ela faz isso.
[/quote]
A variável numero continua com o mesmo valor.
A variável i recebe o valor de ‘numero’ e a cada passo do laço, ela decrementa -1 até chegar a 1.
[quote=lele_vader]Na main você tem um for, o qual tem a variável x que tem o valor que vai de 1 a 10 e é o valor de número.
Esse valor é passado para uma outra função (fatorar), a qual calcula o fatorial de um dado número.
Então funciona assim.
Na main tem essa iteração que roda os números de 1 a 10.
Para cada número é chamado o fatorar, passando o valor atual.
Lá é calculado o fatorial do número passado e printado na tela.
[/quote]