Я решаю проблему.Мне нужна функция, которая возвращает все способы сделать другое положительное int
число плюс равным этому числу, например 6 будет 1 + 5, 2 + 3 + 1,2 + 4, так будет 3, но мое решение возвращает бесконечный цикл
#include <iostream>
using namespace std;
int find(int num,int before)
{
int first=1;
int count=1;
int end =num-1;
if(end-first==0) return count;
while(end-first!=1&&end-first!=0)
{
if(end==before||first==before) continue;
first++;
end--;
}
before=first;
return count+find(end,before);
}
int main()
{
int a;
cin>>a;
int x=find(a,1);
cout<<x;
}
я пытаюсь cout
"a" в цикле и повторять вечно.Пожалуйста, помогите мне.
РЕДАКТИРОВАТЬ: Мой код просто решить часть проблемы, так что это не решение, я постараюсь закрыть тему, спасибо всем