题目:编写程序,输入一个9位的整数,将其分解为3个3位的整数并输出,其中个、十、百位为一个整数,千、万、十万为一个整数,百万、千万、亿位为一个整数。例如,123456789分解为123、456和789.用Python写,写出用加法,除法等四种方法
时间: 2024-09-15 11:08:19 浏览: 48
在Python中,你可以使用字符串切片、整数除法和取模运算来完成这个任务。这里提供四种不同的方法:
1. **字符串切片**:
```python
num = int(input("请输入一个9位整数: ")) # 获取用户输入
part1 = str(num)[:3] # 个位到百位
part2 = str(num)[3:6] # 千位到万位
part3 = str(num)[6:] # 百万位到亿位
print("分割后的数字:", part1, ":", part2, ":", part3)
```
2. **整数除法**:
```python
num = int(input("请输入一个9位整数: "))
divisor = 1000
part1 = num // divisor
part2 = (num % divisor) // 100
part3 = num % 100
print("分割后的数字:", part1, ":", part2, ":", part3)
```
3. **取模运算**:
```python
num = int(input("请输入一个9位整数: "))
part1 = num // 1000 % 1000 # 取前三位
part2 = (num // 100 % 100) # 取中间三位
part3 = num % 100 # 取后三位
print("分割后的数字:", part1, ":", part2, ":", part3)
```
4. **位运算**:
```python
num = int(input("请输入一个9位整数: "))
mask1 = 0b00001111_11111111 # 分割出个位到百位
mask2 = 0b00011111_00001111 # 分割出千位到万位
mask3 = 0b00111111_00000000 # 分割出百万到亿位
part1 = (num & mask1) >> 16 # 右移16位
part2 = (num & mask2) >> 8 # 右移8位
part3 = num & mask3 # 取最后三位
print("分割后的数字:", part1, ":", part2, ":", part3)
```
阅读全文