Реализовать алгоритм рекурсивно и итерационно
Стоит задача решить рекурсией и итерационно

a и b вводят с клавиатуры.
Попытался сделать рекурсией сам, однако так и не понял, где она должна возникать. Может у вас есть какие-то идеи, что я делаю не так?
#include <math.h>
#include <iostream>
using namespace std;
int recursion(int a, int b) {
if (b == 0)
return a;
if (b > 0)
return (a + 1) + (b - 1);
else if (b < 0)
return (a - 1) + (b + 1);
}
int main() {
int a;
cout << "Enter: a= \n";
cin >> a;
int b;
cout << "Enter: b= \n";
cin >> b;
cout << " " << recursion(a, b) << endl;
return 0;
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
int recursion (int a, int b)
{
if ( b == 0 ) return a;
if (b > 0)
return recursion(a + 1,b - 1);
else
return recursion(a - 1,b + 1);
}
Итеративно:
int iteration (int a, int b)
{
while(b > 0) {a++; b--; }
while(b < 0) {a--; b++; }
return a;
}