RosettaCodeData/Task/Mutual-recursion/C++/mutual-recursion-2.cpp

19 lines
236 B
C++
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
class Hofstadter
{
public:
static int F(int n);
static int M(int n);
};
int Hofstadter::F(int n)
{
if ( n == 0 ) return 1;
return n - M(F(n-1));
}
int Hofstadter::M(int n)
{
if ( n == 0 ) return 0;
return n - F(M(n-1));
}