问题描述:
编制isPalindrome(),用于判断参数是否是回文数——回文数,即从前往后读和从后往前读都一样的数,如1122和121都是回文数,而1231、123都不是回文数。请编制isPalindrome()函数,在下面代码的基础上补充相关的部分,实现要求的功能。
代码:
/*
*copyright (c) 2014,烟台大学计算机学院
*all rights reserved.
*文 件 名 :回文素数系列.cpp
*作 者 :张 鹏
*完成日期 :2014年11月07号
*版 本 号 :v1.1
*
*问题描述 :编制一个函数isPalindrome,判断给定数据判断是否为回文数”。
*输入描述 :一个整数。
*程序输出 :输出判断。
*/
#include <iostream> //预处理指令。.
using namespace std; //使用C++的命名空间 std。
bool isPalindrome(int x); //声明自定义函数,用于判断是否为回文数。
int main () //函数首部。
{
int m; //声明一个变量位整型,该变量为带判断的值。
cout<<"请输入一个数,我帮您判断它是否为回文数";//输出汉字,使得界面友好。
cin>>m; //从键盘输入m。
if (isPalindrome(m)) //调用自定义函数判断,并返回1or0。代表真或假。
cout<<m<<"是回文数";
else
cout<<m<<"不是回文数";
return 0; //返回0,结束程序。
}
bool isPalindrome(int x) //自定义函数部分。
{
int m=0,r,z; //声明三个变量为整型。
z=x; //把x的值赋予z。用于判断是否为回文数。
while (x>0)
{
r=x%10;
m=m*10+r;
x=x/10;
} //求m的反序数。
if (z==m)
r=1;
else
r=0;
return r; //判断是否等于反序数,若真即为回文数。反之则不是。
}
运行结果:
知识点与学习心得:
其实老师出的题目都是循序渐进的,这个问题可以借鉴上一个输出反序数的程序来运行。