fork download
  1. #include <iostream>
  2.  
  3. int steps_up, steps_down;
  4.  
  5. int add_up(int x)
  6. {
  7. ++steps_up;
  8. if(x == 10)
  9. return x;
  10. return x + add_up(x + 1);
  11. }
  12.  
  13. int add_down(int x)
  14. {
  15. ++steps_down;
  16. if(x == 1)
  17. return x;
  18. return x + add_down(x - 1);
  19. }
  20.  
  21.  
  22. int main()
  23. {
  24. using namespace std;
  25. steps_up = 0;
  26. steps_down = 0;
  27. cout << "sum from left to right = " << add_up(1) << endl;
  28. cout << "sum from left to right took " << steps_up << " steps." <<endl;
  29. cout << "sum from right to left = " << add_down(10) << endl;
  30. cout << "sum from right to left took " << steps_down << " steps." << endl;
  31. return 0;
  32. }
Success #stdin #stdout 0s 2724KB
stdin
Standard input is empty
stdout
sum from left to right = 55
sum from left to right took 10 steps.
sum from right to left = 55
sum from right to left took 10 steps.