当前位置:主页 > 软件编程 > JAVA代码 >

java计算任意位水仙花数示例(回文数)

时间:2021-10-26 09:12:49 | 栏目:JAVA代码 | 点击:

可计算任意位水仙花数

复制代码 代码如下:

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();
 }

您可能感兴趣的文章:

相关文章