/*****************************************************************/
/*   Jeff Balsley                                                */
/*   gcc factorial.c -o factorial                                */
/*                                                               */
/*****************************************************************/

double fac(int x);

int main(void)
{
    int x;


    printf("Enter number >");
    scanf("%d", &x);

    printf("%d factorial is %f\n", x, fac(x));

    return(0);
}

double fac(int n)
{
    int i;
    double product = 1;

    if (n > 1){
        for(i=n; i>1; --i){
            product = product * i;
        }
    }else if( n < 0){
        printf("Can't take factorial of a negative number!!\n");
        return(0);
    }

    return(product);
}
