“回文”是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如“我为人人,人人为我”等。在数学中也有这样一类数字有这样的特征,成为回文数(palindrome number) 。
设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。
以上信息来自回文数--百度百科
#include <iostream>
using namespace std;
void isPnumber(int value)
{
int num = 0, result = value, surplus;
bool isPnumber= true;
while (result > 0)
{
num++;
result = result / 10;
}
int* arr = new int[num];
result = value;
for (int i = 0; i < num;i++)
{
surplus = result % 10;
arr[i] = surplus;
result = result / 10;
}
for (int i = 0; i < num / 2;i++)
{
if (arr[i] != arr[num-i-1])
{
isPnumber= false;
break;
}
}
if (isPnumber)
{
cout << "The value of " << value << " is Pnumber!!!" << endl;
}
else
{
cout << "The value of " << value << " is not Pnumber!!!" << endl;
}
delete[] arr;
}
int main(int argc, char *argv[])
{
int num;
cout << "Please input the value:";
cin >> num;
isPnumber(num);
system("pause");
return 0;
}
只是些基础的动态创建、删除数组,不喜勿怪。