【问题标题】:Convert decimal to binary (Python) [closed]将十进制转换为二进制(Python)[关闭]
【发布时间】:2021-02-16 04:48:40
【问题描述】:

我必须递归地编写一个函数来转换给定的十进制字符串并返回二进制。我无法更改函数的前 3 行(n = Len(a) ... return str(bin(int(a)))),我不明白为什么我的解决方案不起作用。有人有什么建议吗?

{str} -> {str}

def converttobin(a: str) -> str:
    n = len(a)
    if n == 1:
        return str(bin(int(a)))
    else:
        return converttobin(str(int(a) % 2)) + str(int(a) % 2)

【问题讨论】:

  • 这种方法需要将商与余数分开——即//%。您的代码只计算余数 %
  • 请不要垃圾这样的问题。任务、代码、限制甚至语言标签都完全不同。
  • 这能回答你的问题吗? Python Decimal to Binary Recursive

标签: python python-3.x recursion binary decimal


【解决方案1】:

不发送余数,而是将商 str((int)a//2) 发送到函数调用。

对于十进制到二进制的转换,我们将余数作为当前输出,并进一步将转换应用于商。

【讨论】:

    猜你喜欢
    • 2021-01-31
    • 2021-01-29
    • 2021-05-09
    • 2016-08-13
    • 2020-08-06
    • 2023-03-15
    • 1970-01-01
    • 2013-11-07
    • 2012-06-26
    相关资源
    最近更新 更多