程序的功能是完成对任何键盘输入的一个正整数判断其是否为回文数。所谓回文数是正
时间: 2023-05-24 09:04:33 浏览: 103
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
5星 · 资源好评率100%
序列从左往右和从右往左读起来完全一样的数。例如121、12321都是回文数。
算法思路:
1. 将整数转为字符串;
2. 从字符串两端开始,分别比较两个字符是否相等,直到中心位置;
3. 如果所有字符都相等,那么这个整数就是回文数,否则不是。
Python代码实现:
```python
def is_palindrome(num):
# 将整数转为字符串
s = str(num)
# 字符串长度
n = len(s)
# 从两端开始比较,直到中心位置
for i in range(n // 2):
if s[i] != s[n-i-1]:
return False
return True
# 测试
print(is_palindrome(12321)) # 输出 True
print(is_palindrome(12345)) # 输出 False
```
C++代码实现:
```c++
#include <iostream>
#include <string>
using namespace std;
bool is_palindrome(int num){
// 将整数转为字符串
string s = to_string(num);
// 字符串长度
int n = s.length();
// 从两端开始比较,直到中心位置
for(int i = 0; i < n/2; i++){
if(s[i] != s[n-i-1]) return false;
}
return true;
}
int main(){
// 测试
cout << is_palindrome(12321) << endl; // 输出 1(True)
cout << is_palindrome(12345) << endl; // 输出 0(False)
return 0;
}
```
阅读全文