在 C++ 中检查一个数字是否为回文数
在这里,我们将看到如何检查一个数字是否为回文数。回文数在两个方向上是相同的。例如,数字 12321 是回文数,但 12345 不是回文数。
这个逻辑非常简单。我们必须反转此数字,如果反转的数字与实际数字相同,那么它就是回文数,否则不是。让我们看看这个算法以获得一个更清晰的概念。
算法
isPalindrome(n) −
输入 − 数字 n
输出 − 如果数字是回文数,则为真,否则为假
begin temp := n rev := 0 while n > 0, do rev := rev * 10 + (n mod 10) n := n / 10 done if rev = temp, then return true return false end
示例
#include <iostream>
using namespace std;
bool isPalindrome(int number) {
int temp = number;
int rev = 0;
while(number > 0){
rev = 10 * rev + number % 10; //take the last digit, and attach with the rev number /= 10;
}
if(rev == temp)
return true;
return false;
}
int main() {
int n = 12321;
if(isPalindrome(n)){
cout << n << " is palindrome number";
} else {
cout << n << " is not a palindrome number";
}
}输出
12321 is palindrome number
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP