时间:2021-05-19
可计算任意位水仙花数
复制代码 代码如下:
public static void main(String[] args) {
int max = 10;
for (int len = 1; len <= max; len++) {
System.out.println(getNarc(len, ""));
}
}
static StringBuffer strb = new StringBuffer();
static String getNarc(int len, String start) {
for (int basenum = 1; basenum <= 9; basenum++) {
if (len == 2 || len == 1) {
StringBuffer tmpbuf = new StringBuffer();
tmpbuf.append(start);
for (int j = 0; j < len; j++) {
tmpbuf.append(basenum);
}
tmpbuf.append(new StringBuffer(start).reverse().toString());
strb.append(tmpbuf);
strb.append("\n");
// System.out.println(tmpbuf);
} else if (len > 2) {
String nextStr = "";
if (null != start) {
nextStr = start + basenum;
} else {
nextStr = Integer.toString(basenum);
}
getNarc(len - 2, nextStr);
}
}
return strb.toString();
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1、什么是水仙花数?水仙花数(Narcissisticnumber)也被称为超完全数字不变数(pluperfectdigitalinvariant,PPDI)、
自幂数,又称阿姆斯特朗数,民间通称水仙花数。实则只有3位自幂数才是水仙花数。4位5位6位等等各有别的叫法。复制代码代码如下:
水仙花数:水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:370=33+73+00;371=33+73+13,370、371就是一个水仙花数注意
看到标题java实现水仙花数,首先先要知道什么是水仙花数,具体了解一下所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数列如153=1*1*1+5*5*5
1.求水仙花数打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5