Recursion 我不懂递归函数

Recursion 我不懂递归函数,recursion,Recursion,编写一个递归函数,计算递归定义函数的值 F(n)=-F(n-2),F(0)=1和F(1)=-2。我盯着这个看了好几个小时,我不明白。感谢您的帮助。与任何编程问题一样,您可以首先使用伪代码表示解决方案,然后继续使用您选择的语言实现它,例如 FUNCTION F(n) IF n == 0 -- recursion terminates when n = 0, with result 0 RETURN 0 ELSE IF n == 1 -- recursi

编写一个递归函数,计算递归定义函数的值
F(n)=-F(n-2),F(0)=1和F(1)=-2。我盯着这个看了好几个小时,我不明白。感谢您的帮助。

与任何编程问题一样,您可以首先使用伪代码表示解决方案,然后继续使用您选择的语言实现它,例如

FUNCTION F(n)
  IF n == 0           -- recursion terminates when n = 0, with result 0
    RETURN 0
  ELSE IF n == 1      -- recursion can also terminate when n = 1, with result -2
    RETURN -2
  ELSE                -- otherwise recursion contiunes with F(n - 2), F(n - 4), ...
    RETURN -F(n - 2)  -- until one of the terminating conditions is reached
END

从这里可以很简单地用C++或任何你选择的语言来实现这个功能。还应确保实施“测试线束”,即使用一系列不同的输入值调用

F
,然后打印结果的功能,因此,您可以验证函数是否正确运行,并在必要时对其进行调试。

要理解递归,您必须首先理解递归——等等。您是否要求社区做功课??你应该改变你的问题,以反映你所面临的问题如果你证明自己至少花了一些精力来解决这个问题,你就更有可能得到帮助。这与C++11有什么关系?(+1)在不解决OP的作业的情况下提供一些指导的好方法。