unsigned long n = 5; unsigned long factorial(unsigned long n) { unsigned long result = 1; while (n>1) { result *= n; --n; } return result; } int main() { return factorial(n); }