递归函数,将数字除以2而不使用/

时间:2013-06-08 05:15:41

标签: function recursion division

我需要帮助。 我需要创建一个递归函数,它接收一个“n”数并返回“n / 2”而不分割。

编辑:

这就是我写的内容,但只有在分割后仍然是十进制数而不是浮点数时才有效,这就是我问的原因。

int recursive(int a, int b)
{ 
  if ( a == (0.5 * b) )
    return a;

  return recursive(a-1, b);
}

1 个答案:

答案 0 :(得分:0)

递归解决方案要慢得多,但这里是使用python 3

的正整数实现
def divRecursive(a,b):
    if a<b:
        return 0
    return 1+divRecursive(a-b,b)