判断一个数是否为回文数,回文数指的是其各个数字左右堆成的整,请写出c++的代码
{:10_277:} 可以使用字符串的反转来判断一个数是否为回文数。首先,将数字转换为字符串,然后将字符串反转,最后将反转后的字符串与原字符串进行比较。如果两个字符串相等,则该数为回文数,否则不是回文数。以下是C++代码示例:
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
bool isPalindrome(int num) {
string str = to_string(num);// 将数字转换为字符串
string reversedStr = str;// 创建一个与原字符串相同的字符串
reverse(reversedStr.begin(), reversedStr.end());// 反转字符串
return str == reversedStr;// 比较原字符串和反转后的字符串
}
int main() {
int num;
cout << "请输入一个数字: ";
cin >> num;
if (isPalindrome(num)) {
cout << num << " 是回文数" << endl;
} else {
cout << num << " 不是回文数" << endl;
}
return 0;
}
这段代码首先从用户输入获取一个数字,然后调用 isPalindrome 函数判断该数字是否为回文数。最后,根据判断结果输出相应的信息。
希望对你有帮助! #include <iostream>
bool isPalindrome(int num) {
int reversed = 0;
int original = num;
while (num > 0) {
int digit = num % 10;
reversed = reversed * 10 + digit;
num /= 10;
}
return original == reversed;
}
int main() {
int num;
std::cout << "请输入一个整数:";
std::cin >> num;
if (isPalindrome(num)) {
std::cout << num << " 是回文数" << std::endl;
} else {
std::cout << num << " 不是回文数" << std::endl;
}
return 0;
}
参考:
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
bool isPalindrome(int num) {
string str = to_string(num);// 将数字转换为字符串
string reversedStr = str;// 创建一个与原字符串相同的字符串
reverse(reversedStr.begin(), reversedStr.end());// 反转字符串
return str == reversedStr;// 比较原字符串和反转后的字符串
}
int main() {
int num;
cout << "请输入一个数字: ";
cin >> num;
if (isPalindrome(num)) {
cout << num << " 是回文数" << endl;
} else {
cout << num << " 不是回文数" << endl;
}
return 0;
}
页:
[1]