码迷,mamicode.com
首页 > 其他好文 > 详细

回文数

时间:2019-05-26 22:31:35      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:复杂   length   程序   数字   运行   功能设计   设计   存在   alt   

回文数

需求分析

该项目需求是要判断一个数是否满足回文数的各个条件,并输出判断结果。回文数:设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数(参考百度百科对回文数的解释)

功能设计

  • 基本功能:查找、判断并输出回文数
  • 扩展功能:输入一个区间的两个端点,判断该区间内是否存在回文数,根据判断输出相应的结果

设计实现

首先定义两个变量a,b,存储用户输入的区间头和尾,之后使用for循环遍历区间,逐个判断每一个数是否为回文数,判断过程见核心代码的注释。

测试运行

正常情况

技术图片

异常情况

技术图片

核心代码


        for (int i=a;i<=b ;i++) {   //遍历a到b
            int num =i;
            String str=String.valueOf(num);        //将该数转化为字符类型
            int len=str.length();             //读取字符串长度
            if (len>1){               //如果i不是个位数
                int j=0;
                while(j<=(len/2)-1 && str.charAt(j)==str.charAt(len-j-1)) {   //如果j未读取到字符串的一半且头尾对应位置字符相等
                    j++;
                }
                if(j==len/2){       //如果字符串正序和倒序相等
                    System.out.println(i);   //i为回文数
                    count++;     //计数变量加一
                }
            }
        }


总结

回文数虽然比较好理解,但是相比来说通过程序实现输出区间中的回文数还是较为复杂的,这个项目中将数字转化为字符,之后使用String类的常用方法进行比较判断会比比较数字容易一点。

PSP

步骤 耗时(min) 百分比
需求分析 15 21.4%
设计 10 14.3%
代码实现 20 28.6%
测试 10 14.3%
分析总结 15 21.4%

回文数

标签:复杂   length   程序   数字   运行   功能设计   设计   存在   alt   

原文地址:https://www.cnblogs.com/20175317zrw/p/10923636.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!