是一任意自然数,如果n的各位数字反向排列所得自然数与n相等,则n被称为回文数。从键盘输入一个5位数字,请编写程序判断这个数字是不是回文数。
时间: 2024-05-14 22:14:49 浏览: 97
输入一个5位整数,判断该数是否是一个回文
5星 · 资源好评率100%
算法1:
1. 将输入的数字转换成字符串
2. 判断字符串是否回文,即判断字符串与翻转后的字符串是否相等
3. 如果相等,则说明是回文数,否则不是
时间复杂度:O(n),其中n为输入数字的位数
算法2:
1. 将输入的数字按位拆分,存入数组中
2. 从数组两端开始比较对应位置的数字是否相等,直到中间位置
3. 如果所有对应位置上的数字都相等,则说明是回文数,否则不是
时间复杂度:O(n/2),其中n为输入数字的位数
以下是算法2的Python代码实现:
```python
num = int(input("请输入一个5位数字:"))
digits = []
for i in range(5):
digits.append(num % 10)
num //= 10
is_palindrome = True
for i in range(2):
if digits[i] != digits[4-i]:
is_palindrome = False
break
if is_palindrome:
print("是回文数")
else:
print("不是回文数")
```
阅读全文