Ok, so Im trying to write a program that computes factorials recursively.

Here is what Ive got (when I asked my teacher for help, he said my factorial.cpp has one key flaw but I cant find it)

Factorial.cpp

Code:int factorial(int N) { //cout << "into factorial with " << N << endl; if ( N < 1 ) return 1; // base case //cout << " not a base case with N = " << N << endl; int answer = factorial(N-1); //cout << " returning " << answer << " as answer at N = " << N << endl; return answer; }

driveFactorial.cpp

Code:#include <iostream> #include <fstream> using namespace std; #include "factorial.cpp" int main() { int FactForN = 1; cout << "\n Factorial of what number? (negative to end) "; while ( cin >> FactForN && FactForN > 0) { int answer = factorial(FactForN); cout << "\n The factorial of " << FactForN << " is " << answer << endl; cout << "\n Factorial of what number? (negative to end) "; } }

any help would be appreciated. Thanks!