1. 简答题 设计一个程序,实现数字的进制转换。要求,输入十进制数,则转换为二进制、十六进制;输入二进制数,则转换为十进制、十六进制;输入十六进制数,则转换为二进制、十进制。
时间: 2024-10-14 13:09:42 浏览: 34
设计这样一个程序,你可以使用Python编写,因为它提供了一些内置函数可以方便地完成这种转换。这里是一个简单的示例:
```python
def decimal_to_binary(decimal):
return bin(decimal).replace("0b", "")
def decimal_to_hexadecimal(decimal):
return hex(decimal).upper().replace("X", "x")
def binary_to_decimal(binary):
return int(binary, 2)
def binary_to_hexadecimal(binary):
decimal = int(binary, 2)
return hexadecimal_to_string(decimal)
def hexadecimal_to_decimal(hexadecimal):
return int(hexadecimal, 16)
def hexadecimal_to_binary(hexadecimal):
decimal = hexadecimal_to_decimal(hexadecimal)
return binary_to_string(decimal)
def hexadecimal_to_string(value):
return format(value, 'x').upper()
# 用户交互部分
while True:
choice = input("请输入选项:(1) 十进制转二进制/十六进制\n(2) 二进制转十进制/十六进制\n(3) 十六进制转二进制/十进制\n请输入:")
if choice == "1":
num = int(input("请输入十进制数:"))
print(f"二进制:{decimal_to_binary(num)}\n十六进制:{decimal_to_hexadecimal(num)}")
elif choice == "2":
binary_str = input("请输入二进制数:")
print(f"十进制:{binary_to_decimal(binary_str)}\n十六进制:{binary_to_hexadecimal(binary_str)}")
elif choice == "3":
hexadecimal = input("请输入十六进制数:")
print(f"二进制:{hexadecimal_to_binary(hexadecimal)}\n十进制:{hexadecimal_to_decimal(hexadecimal)}")
else:
print("无效选择,请重新输入。")
```
这个程序会提示用户选择要进行哪种类型的转换,并接收相应的输入,然后调用对应的转换函数。用户可以选择将十进制、二进制或十六进制之间的数字相互转换。
阅读全文