Función factorial
Una definición básica de la función factorial es
n! = n(n - 1)!
0! = 1
Para calcular 0! , 1! , 2! , 3! ,.... podemos usar los siguientes algoritmos no recursivos
leer n
factorial =1
si (n > 1) entonces
aux = n
mientras (aux > 1) hacer
factorial = factorial * aux
aux = aux - 1
fin mientras
fin si
class fact
{
public static void main(String arg[ ])
{
for(int i = 0; i <= 10; i++)
{
System.out.println( i + "! : " + factorial(i));
}
}
public static long factorial( int n )
{
long f = 1;
if (n > 1)
{
int aux = n;
while (aux > 1)
{
f = f * aux;
aux--;
}
}
return f;
}
}
Bajar archivo
Salida a pantalla
Sin usar la variable aux y simplificando las dos instrucciones del ciclo while se tiene :
public static long factorial( int n )
{
long f = 1;
if (n > 1)
while (n > 1)
{
f *= n--;
}
return f;
}