int factorial ( int n, int a = 1 ) { if ( n == 0 ) return a; return factorial ( n-1, a * n ); }
This is a recursive function that calculates facto