首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用循环将十进制转换为二进制

使用循环将十进制转换为二进制
EN

Stack Overflow用户
提问于 2021-10-25 03:21:25
回答 2查看 407关注 0票数 1

我想写一个程序,把十进制数0到9转换成二进制。我可以编写代码如何使用重复除法将十进制数转换为二进制数。但是,我在创建一个循环时遇到了麻烦,该循环将以二进制格式输出十进制数0到9。

以下是我的代码

代码语言:javascript
复制
number = 0

remainder = 0
x = ""
while number (0,9):
    remainder = (number%2)
    x = str(remainder) + x
    number = number//2
   
    (x[::-1])
    print(number, "is the binary of",x)
EN

回答 2

Stack Overflow用户

发布于 2021-10-25 03:33:13

以下是您的代码的修复:

代码语言:javascript
复制
number = 123
remainder = 0
x = ""
n = number # don't work on the original number
           # you need it for the final print
while n > 0:  # wrong syntax for the condition
    remainder = (n%2)
    x = str(remainder) + x
    n = n//2
    #(x[::-1])  # this is useless
print(x, "is the binary of", number) # wrong order to print

注意:您还应该利用divmod__,而不是两个单独的%//操作

票数 1
EN

Stack Overflow用户

发布于 2021-10-25 03:32:13

以下是您可以执行的操作:

代码语言:javascript
复制
number = 5
n = number
x = ""
while n:
    x = str(n % 2) + x
    n //= 2
    
print("Decimal:", number)
print("Binary:", x)

输出:

代码语言:javascript
复制
Decimal: 5
Binary: 101
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69702530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档