//* Recursive factorial function - case study *

#include <iostream> using namespace std; long int RFACT(int n); int main() { cout << RFACT(5) << endl; return(0); } long int RFACT(int n) { cerr << "called: RFACT(" << n << ")" << endl; if (n<2) { cerr << " return(1)" << endl; return(1); } else { cerr << " call: RFACT(" << n-1 << ")" << endl; long int result=n*RFACT(n-1); cerr << " multiply..." << endl; cerr << " return(" << result << ")" << endl; return( result ); } }