给一个不多于5位的正整数,要求: 1.求出它是几位数; 2.分别输出每一位数字; 3.按逆序输出各位数字,例如原数为321,应输出123.
时间: 2024-11-12 09:35:02 浏览: 21
python 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字 (示例)
5星 · 资源好评率100%
给定一个不多于五位的正整数,你可以通过以下步骤来实现这个功能:
1. **判断位数**:首先检查该数是否小于等于5。如果是0到9之间的单个数字,则它是一位数;如果是两位数,其范围在10到99之间,即有两位;依此类推,每增加一位,最大值就是当前位数的10倍加1。
2. **每位数字输出**:可以使用取模运算 `%` 来获取每一位数字。从最高位开始,每次将数字除以10并取余数,直到商变为0为止。例如,对于数字1234,第一位是 `num % 10`,第二位是 `(num / 10) % 10`,以此类推。
3. **逆序输出**:为了得到逆序输出,你可以先将所有的位数存入数组或列表,然后按照相反的顺序遍历并打印它们。例如,存储在数组 `[百位, 十位, 个位]` 中的123,逆序后输出就是 `3, 2, 1`。
下面是一个简单的Python示例代码,实现了上述功能:
```python
def process_number(num):
# 判断位数
if num > 0 and num <= 9:
digits = [str(num)]
elif num > 9 and num < 100:
digits = [str(num // 10), str(num % 10)]
else:
raise ValueError("输入的数值超过五位")
# 输出每一位
for digit in digits:
print(digit, end="")
# 逆序输出
reversed_digits = digits[::-1]
print("\n逆序:", " ".join(reversed_digits))
# 测试
process_number(321)
```
阅读全文