输入一个字符串s,现需要将字符串s中所有二进制数字字符提取出来形成一个新字符串,并将该二进字符串转换为其对应的十进制输出,如字符串s假设为a12bde87310201,则提取出来的新字符串为11001,再把该字符串转换为十进制,用流程图实现该算法。
时间: 2023-03-20 08:01:14 浏览: 134
进制转换 把二进制数转换成十进制数
以下是该算法的流程图:
```
开始 --> 输入字符串s --> 初始化二进制数字字符串bin_str为空串 --> 循环遍历字符串s中的每一个字符:
--> 如果该字符是二进制数字字符,则将其加入到bin_str中
--> 否则忽略该字符 --> 结束循环
--> 如果bin_str不为空,则将其转换为十进制数并输出 --> 否则输出“未找到二进制数字字符”
结束
```
具体实现细节可以参考下面的Python代码:
```python
s = input("请输入字符串s:")
bin_str = ""
for c in s:
if c in "01":
bin_str += c
elif bin_str:
dec = int(bin_str, 2)
print("提取出来的二进制数字字符串为:", bin_str)
print("转换为十进制数为:", dec)
bin_str = ""
if bin_str:
dec = int(bin_str, 2)
print("提取出来的二进制数字字符串为:", bin_str)
print("转换为十进制数为:", dec)
else:
print("未找到二进制数字字符")
```
输入示例:a12bde87310201
输出示例:
```
提取出来的二进制数字字符串为: 11001
转换为十进制数为: 25
提取出来的二进制数字字符串为: 1010
转换为十进制数为: 10
提取出来的二进制数字字符串为: 101000000000101
转换为十进制数为: 42053
```
阅读全文