/******************************/
/* fact - recursive factorial */
/******************************/

int fact ( int n )    /* recursive factorial */
{
    int f;
    if ( n > 1 )
        f = n * fact ( n - 1 );
    else
        f = 1;
    return f;
}

void main ( void )    /* main routine to drive fact */
{
    int n;
    n = input ( );
    if ( n > 0 )
        output ( fact ( n ) );
}

