Como fazer um algoritmo para entrar com um numero, exemplo 5 e calcular 5x4x3x2x1 ?
Obrigado!
Dúvida em algoritmo simples
4 Respostas
public int fatorial(int x){
//Vamos supor que o x passado seja 5
//fatorial(x) = x*(x-1)*(x-2) * (x-3) .... (x-(x-1))
//fatorial começa por 5 agora multiplicar por 5*(5-1)*(5-2)*(5-3)...(5-4)
int fatorial = x;
//diferenca do x para o proximo fator
int diferenca = 1;
while(diferenca<x){ //até 4 >< 5
// inicia com 5, 5*(5-1)= 20 agora res ultado é 20 . depois 20*(5-2)=60*(5-3)=120*(5-4)=120
fatorial*=(x-diferenca);
diferenca++;
}
return resultado;
}
Isso irá te ajudar:
Você pode fazer um for que vai percorrendo enquanto a variavel for maior q zero
for(int i=numero;i>o;i--)
Dentro do for só ir multiplicando pelo i.
D
Ta ai:
package problemGUJ;
import java.util.Scanner;
public class Fatorial {
public static void main(String[] args) {
Scanner input = new Scanner( System.in );
System.out.print("Digite u número: ");
int num = input.nextInt();
int mult=1;
for(int j=num; j>1; j--){
mult=mult*j;
}
System.out.println(mult);
}
}
Criado 23 de abril de 2012
Ultima resposta 23 de abr. de 2012
Respostas 4
Participantes 5
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Engenharia de Prompt para Devs: Um guia para aprender a... Por Ricardo Pupo Larguesa — Casa do Codigo