Year 2 compilers coureswork

recursion.c 248B

1234567891011121314151617181920
  1. /* ##answer: 5166*/
  2. int inner_fact(int n, int a) {
  3. if (n == 0) return a;
  4. return inner_fact(n-1, a*n);
  5. }
  6. int fact(int n) {
  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. }