检查数字是否为C ++中的回文
在这里,我们将看到如何检查数字是否是回文。回文数在两个方向上均相同。例如,数字12321是回文,但12345不是回文。
逻辑很简单。我们必须反转数字,如果反转的数字与实际数字相同,则为回文,否则为非。让我们看看该算法以获得更好的主意。
算法
isPalindrome(n)-
输入-数字n
输出-如果数字是回文,则为true,否则为false
begintemp := 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
以上是 检查数字是否为C ++中的回文 的全部内容, 来源链接: utcz.com/z/322237.html