#include using namespace std; // GNU = GNU's Not Unix // This sentence is false void print_hi(){ cout << "hi\n"; print_hi(); } /* * 1! = 1 * 2! = 1 * 2 = 2 * 3! = 1 * 2 * 3 = 6 * 4! = 1 * 2 * 3 * 4 = 24 * 5! = 1 * 2 * 3 * 4 * 5 = 120 * 6! = 5! * 6 = 720 * ... and so on * In general: * n! = (n-1)! * n * */ unsigned long int factorial(unsigned long int n){ if(n == 1) return 1; return factorial(n - 1) * n; } int main(){ cout << "6! = " << factorial(6) << endl; for(int i = 1; i < 21; i++){ cout << "i" << "!: " << factorial(i) << endl; } return 0; }