大家好,欢迎来到IT知识分享网。
回文数
需求分析
该项目需求是要判断一个数是否满足回文数的各个条件,并输出判断结果。回文数:设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% |
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/32417.html