回文数
原理说明
如何判断一个数是否为回文数?
首先定义三个变量:num代表输入的数,s代表计算的量,y代表计算后的新数。其中s = num,num作为比较数进行储存,判断过程中用s去计算
int num , s , y = 0
判断一个数是否为回文数,我们进行以下步骤:
1.前文可知,y是新数。其中的原理就是每次截取s(也就是num)和10的商,并进行对y的运算,运算就是:“新数=新数*10+s与10的商”
2.对s进行除10处理
3.判断s是否小于零
while(s>0){
y=y*10+s%10;
s=s/10;
}
当运算完时,就可以判断y和num是否相等,如果y=num那么这个数就是回文数
我们用1234来举例子(1234不是回文数)
运算次数 | y(y=y*10+s%10) | s(s=s/10) |
---|---|---|
1 | 0 | 1234 |
2 | 4(0*10+1234%10) | 123 |
3 | 43(4*10+123%10) | 12 |
4 | 432(43*10+12%10) | 1 |
5 | 4321(432*10+1%10) | 0 |
6 | 退出循环 | 退出循环 |
y(4321)不等于num(1234)
所以1234不是回文数