c++利用栈能将一个十进制整数化为二进制数
时间: 2023-05-27 11:01:43 浏览: 111
binary.rar_数值算法/人工智能_Visual_C++_
算法:
1. 初始化一个空栈
2. 将十进制整数不断除以2,每次余数入栈,更新十进制整数为商
3. 直到十进制整数为0,停止循环
4. 从栈中弹出各位二进制数,拼接成字符串返回
代码实现:
```
def decimal_to_binary(decimal):
stack = []
while decimal != 0:
remainder = decimal % 2
stack.append(remainder)
decimal = decimal // 2
binary = ""
while stack:
binary += str(stack.pop())
return binary
```
示例:
```
>>> decimal_to_binary(10)
'1010'
>>> decimal_to_binary(255)
'11111111'
```
阅读全文