Free Web Site - Free Web Space and Site Hosting - Web Hosting - Internet Store and Ecommerce Solution Provider - High Speed Internet
Search the Web

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;
}