python给出一个小于1000正整数,编求该数是几位数,并按逆序打印出各位上的数字
时间: 2024-10-09 21:02:26 浏览: 49
python 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字 (示例)
5星 · 资源好评率100%
在Python中,你可以通过以下步骤编写一个程序来解决这个问题:
1. 首先,接收用户输入的一个小于1000的正整数。
2. 确定数字的位数,可以将数字除以10并向下取整,然后将结果乘以10加1,因为每一次除以10会得到一个新位的数字,直到商变为0。
3. 用循环依次获取每一位数字,并将其添加到一个新的字符串中,按照相反的顺序(从右向左),即逆序打印。
下面是一个示例函数来实现这个功能:
```python
def reverse_number(num):
# 计算位数
num_str = str(num)
if len(num_str) > 3:
print("输入的数字大于1000")
return
digits = []
for _ in range(len(num_str)):
digits.append(int(num_str[-(len(num_str) - _)]))
# 逆序并打印每位数字
reversed_digits = [str(digit) for digit in digits[::-1]]
print(f"这是{len(digits)}位数:", end="")
print("、".join(reversed_digits))
# 获取用户输入并验证
num_input = int(input("请输入一个小于1000的正整数:"))
reverse_number(num_input)
```
阅读全文