Year 2 compilers coureswork

recursion.c 254B

123456789101112131415161718
  1. /* ##answer: 5166*/
  2. int fact(int n) {
  3. int inner_fact(int n, int a) {
  4. if (n == 0) return a;
  5. return inner_fact(n-1, a*n);
  6. }
  7. return inner_fact(n, 1);
  8. }
  9. int main() {
  10. int x = fact(3);
  11. int y = fact(5);
  12. int z = fact(7);
  13. return x+y+z;
  14. }