从键盘输入一个短整形整数,判断其最高位(及整数二进制表示的最左边)是0还是1,若为0则输出“正数”,若为1则输出“负数”。
时间: 2024-02-20 07:02:20 浏览: 138
输入一个整数判断正负
好的,可以通过以下 Python 代码实现:
```python
num = int(input("请输入一个短整型整数:"))
if num & 0x8000: # 使用与运算判断最高位是否为1
print("负数")
else:
print("正数")
```
注解:
- `&` 表示位运算中的与运算,例如 `a & b` 表示将 `a` 和 `b` 的二进制表示进行与运算,返回一个新的二进制数。
- `0x8000` 是一个十六进制数,其二进制表示为 `1000 0000 0000 0000`,即最高位为1,其余位为0。
- `num & 0x8000` 表示将 `num` 的二进制表示和 `0x8000` 的二进制表示进行与运算,如果最高位为1,则结果不为0,即为真,否则为假。因此,如果 `num` 的最高位为1,则 `num & 0x8000` 为真,输出“负数”;否则 `num & 0x8000` 为假,输出“正数”。
阅读全文