设计一个算法:输入一个5位数以内的正整数,完成以下操作:1.判断他是几位数。2.按序输出其各位数字。3.逆序输出其各位数字。
时间: 2024-09-26 08:10:05 浏览: 51
(完整word)C语言程序设计100个经典例子.doc
设计这样一个算法可以分为三个步骤:
1. 判断位数:
- 使用Python的len()函数获取n的长度,因为字符串的长度等于它包含的字符数,这将直接告诉我们它是几位数。
```python
def judge_digits(n):
return len(str(n))
```
2. 按序输出各位数字:
- 将数字转换成字符串,然后逐个提取每一位并添加到结果列表中。
```python
def output_in_order(n):
str_n = str(n)
digits = [int(digit) for digit in str_n]
return digits
```
3. 逆序输出各位数字:
- 对上述得到的`digits`列表进行反转。
```python
def reverse_digits(digits):
return digits[::-1]
```
整合整个算法:
```python
def process_number(n):
num_digits = judge_digits(n)
digits_in_order = output_in_order(n)
reversed_digits = reverse_digits(digits_in_order)
print(f"Number {n} has {num_digits} digits.")
print("Digits in order:", digits_in_order)
print("Digits in reverse order:", reversed_digits)
# 测试算法
process_number(12345)
```
阅读全文