3、 编写一个程序,实现二进制转换成十进制
时间: 2024-05-14 17:15:12 浏览: 12
思路:从二进制的最高位开始,每一位都乘以2的指数次幂,然后相加即可。
代码如下:
```python
binary = input("请输入一个二进制数:")
decimal = 0
for i in range(len(binary)):
decimal += int(binary[i]) * 2 ** (len(binary)-i-1)
print("转换后的十进制数为:", decimal)
```
运行结果:
```
请输入一个二进制数:1010
转换后的十进制数为: 10
```
相关问题
java编写一个程序将十进制转换成二进制
可以使用以下代码实现将十进制转换成二进制:
```java
import java.util.Scanner;
public class DecimalToBinary {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个十进制数:");
int decimal = input.nextInt();
String binary = "";
while (decimal > 0) {
binary = (decimal % 2) + binary;
decimal /= 2;
}
System.out.println("转换后的二进制数为:" + binary);
}
}
```
该程序首先使用 `Scanner` 类获取用户输入的十进制数,然后使用一个 `while` 循环不断将该数除以 2 并取余,将余数拼接到二进制数的前面,直到十进制数为 0。最后输出转换后的二进制数。
编写一个程序实现二进制和十进制的转换
好的,以下是 Python 代码实现二进制和十进制的转换:
```
# 将十进制数转换为二进制数
def decimal_to_binary(n):
if n == 0:
return '0b0'
binary = ''
while n > 0:
binary = str(n % 2) + binary
n //= 2
return '0b' + binary
# 将二进制数转换为十进制数
def binary_to_decimal(binary):
decimal = 0
for i in range(len(binary) - 1, 1, -1):
decimal += int(binary[i]) * 2**(len(binary) - i - 1)
return decimal
# 测试
print(decimal_to_binary(10)) # 输出:0b1010
print(binary_to_decimal('0b1010')) # 输出:10
```
以上代码中,`decimal_to_binary` 函数将十进制数转换为二进制数,`binary_to_decimal` 函数将二进制数转换为十进制数。在转换时,需要注意二进制数前缀为 `0b`,而十进制数没有前缀。