给一个不多于 5 位的正整数,要求 (1)求出它是几位数 (2)分别输出每一位数字 (3)按逆序输出各位数字,例如原数为 321,应输出 123
时间: 2024-10-07 14:07:24 浏览: 31
广东工业大学计算机科学与技术程序设计实验报告
要解决这个问题,你可以通过编程步骤来完成:
1. **判断位数**:
- 首先检查输入的数是否大于0(因为0不是正整数),如果是,就循环遍历每一位直到变成0。计数器会记录遍历到的次数,即为位数。
2. **输出每一位数字**:
- 再次从最高位开始遍历,将每一位转换成字符并打印出来。
3. **逆序输出各位数字**:
- 可以创建一个新的字符串,然后从最低位开始添加每一位数字,最后反转整个字符串。
以下是使用Python语言的一个简单示例:
```python
def process_number(num):
if num <= 0 or not isinstance(num, int):
return "输入错误,需要的是正整数且不超过5位"
digits = []
while num > 0:
digit = num % 10
digits.append(digit)
num //= 10
# 输出原始顺序
print(f"原数为 {num},共有{len(digits)}位")
print("每位数字:", *digits)
# 逆序输出
reversed_digits = digits[::-1]
print("逆序输出:", *reversed_digits)
# 测试
process_number(321)
```
阅读全文