2018-2019-2 20175310 个人项目报告1--水仙花数
2018-2019-2 20175310 个人项目报告1--水仙花数
定义:
水仙花数是指一个n
位数(n≥3 )
,它的每个位上的数字的n
次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)
需求分析:
根据水仙花数的定义,用Java语言进行设计实现。
设计实现:
由于水仙花数是至少为三位数的数字,因此我实现的是列举出100-999
之间所有的水仙花数。
伪代码如下:
1、将要判断的数除以100,求得该数的百位b。
2、将该数减去百位b*100,然后再除以10,求得十位s。
3、用该数减去百位b*100再减去十位s*10,得到个位数g。
4、判断百位b的三次方加百位b的三次方加个位数g的三次方是否与原来的数相等,若相等则输出,否则计算下一个数。
5、输出100-999之间水仙花数的个数
难点总结:
这个程序其实非常简单,只有一个主类,没有调用什么的,而且去年学C的时候也写过水仙花数,所以实现起来没有任何问题。
运行结果截图:
码云链接
PSP时间
步骤 | 耗时(min) | 百分比 |
---|---|---|
需求分析 | 10 | 11% |
设计 | 15 | 16% |
代码实现 | 25 | 27% |
测试 | 10 | 11% |
分析总结 | 30 | 32% |