首先说明一下回文数是什么,回文数就是将这个数反转之后,得到的数仍然是同一个数。例如:131,25352就是回文数。

那么怎么判断一个数是不是回文数呢?

有两种方法,第一种是数字翻转,即将整数翻转以后,看和原来一样吗,一样的话,就是回文数,反之则不是。

第二种方法是:逐位判断,即取整数的最后一位和第一位比较,然后将左右两位删除,再进行取最后一位和第一位比较,如果想等,则是回文数;反之则不是。

第一种:数字翻转

代码如下:

public class PalindromeNumber{public static void main(String args[]){palindrome(25352);}public static boolean palindrome(int x){if(x<0){return false;}int temp = x;int rec = 0;while(temp>0){rec = rec * 10 + temp % 10;  //将数字翻转,首先取最后一位temp = temp / 10;  //取一位就减少一位}System.out.println(x+"是回文数吗?"+x == rec);return x == rec;}
}

第二种方法:逐位判断

代码如下:

public class PalindromeNumber{public static void main(String args[]){palindrome(321);}public static boolean palindrome(int x){if(x<0){return false;}int len = 1;while(x / len >= 10){ //判断位数len *= 10;}while(x > 0){int left = x /len; //取左边第一位int right = x % 10; //取最后一位if(left != right){System.out.println(false);return false;}x = x % len / 10;  //减去左右边上两位,剩余中间的len  = len /100;  //len也减少两位}System.out.println(true);return true;}
}

这两种方法均可以实现回文数的判断。

怎样判断一个整数是不是回文数?相关推荐

  1. 求解如何判断一个整数是不是回文数的问题

    1.先了解概念 什么样的整数叫回文数? 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数.例如:121是回文数,123不是回文数.这里有两个容易混淆的地方: ①.负数全都不是回文数.因为要 ...

  2. C语言判断一个五位数是不是回文数

    判断方法:若这个五位数的万位数等于个位数且千位数等于十位数,该数即为回文数,否则就不是回文数. 编码实现: #include<stdio.h> int main() {int wan,qi ...

  3. java算法:判断一个五位数是不是回文数

    题目:一个 5 位数,判断它是不是回文数.即 12321 是回文数,个位与万位相同,十位与 千位相同. package com.qq.weixin;import java.util.Scanner;p ...

  4. substr判断最后一个是不是逗号_用java帮助你判断一个数是不是回文数

    哈喽大家好,这里是Java小白成长记! 昨天分享了怎么来判断一个数字的奇偶性,其中用到了if选择语句和求余运算,虽然都不是很难的知识点,但是也不可能分享一次就不管了,所以今天继续分享一个和它俩有关的的 ...

  5. java 如何判断余数_用java判断一个数是不是回文数!

    哈喽大家好,这里是Java小白成长记! 昨天分享了怎么来判断一个数字的奇偶性,其中用到了if选择语句和求余运算,虽然都不是很难的知识点,但是也不可能分享一次就不管了,所以今天继续分享一个和它俩有关的代 ...

  6. 用c语言编程判断一个数是否为回文数,C语言判断一个数是不是回文数

    所谓回文数,就是说一个数字从左边读和从右边读的结果是一模一样的,例如12321.判断给出的整数是否是回文数:若是,则输出该整数各位数字之和:否则输出该数不是一个回文数. 原理大致为:任何一个数除以10 ...

  7. 输入一个整数判断其是否是回文数

    每日壹句:如果你要驯服一个人,就要冒着掉眼泪的危险.我们从不惧怕眼泪,但是,要值得. "回文"是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如"我 ...

  8. C语言:一个五位数,判断其是否为回文数

    /*一个五位数,判断其是否为回文数*/ #include <stdio.h> int main() {long x;int ge,shi,qian,wan;printf("请输入 ...

  9. 设n是一个任意自然数,如果n的各位数字反向排列所得的自然数与n相等,则n称为回文数。从键盘输入一个5位数字,请编写程序判断这个数字是不是回文数

    设n是一个任意自然数,如果n的各位数字反向排列所得的自然数与n相等,则n称为回文数.从键盘输入一个5位数字,请编写程序判断这个数字是不是回文数 nume=input('请输入一个数字:') nume1 ...

最新文章

  1. php artisan 更新,Laravel 5:PHP Artisan迁移:刷新
  2. 小县城也被互联网+撞了一下腰
  3. android wm 改变大小,Android 屏幕适配经验总结
  4. pycharm的演示模式、无干扰模式、全屏模式(presentation mode、distraction free mode、full screen mode)
  5. jwt如何防止token被窃取_JWT令牌
  6. matlab指定间隔符,在matlab中为.dat文件指定小数分隔符[复制]
  7. 【youcans 的 OpenCV 例程200篇】157. 霍夫变换直线检测
  8. linux-关于用户的约定
  9. C++中cin的常用用法
  10. c语言 程序停止,Go语言宕机(panic)——程序终止运行
  11. python有道自动翻译_python爬虫之有道在线翻译
  12. 【论文阅读-句向量】On the sentence embeddings from Pre-trained Language Models
  13. Eclipse 远程开发插件 RSE 及远程登录
  14. 让51单片机进行上网
  15. 经典SQL操作语句【转载】
  16. 中国石油大学(北京)-《中国近现代史纲要》第二阶段在线作业
  17. python篮球游戏单机下载_NBA 2K20
  18. 左移 右移 逻辑右移 算术右移
  19. 计算机科学与技术脑电波,科学“读心术”,当脑电波扫描图遇到人工智能
  20. SYD8811 使用外部32.768Khz晶振作为时钟源

热门文章

  1. Android SQLite多线程读写和线程同步源码分析
  2. 深度学习论文精读(4):MobileNetV2
  3. 微信恢复大师花了200多,套路一环接一环!
  4. utf-8无BOM编码格式什么意思?
  5. opencv膨胀操作
  6. python保存dat文件_用Python解析.DAT文件
  7. OJ每日一练——小青蛙上台阶
  8. 国内外十大ERP软件系统排名!
  9. JavaScript两个练习
  10. C++中怎么暂停几秒