用java语言编写打印输出100 ――999之间所有的水仙花数

用java语言编写打印输出100 ――999之间所有的水仙花数

输入3就是100-999的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-25

  package sy1;

  

  import java.util.Scanner;

  

  public class TestNarcissus {

  /*

  * public static void main(String[] args) {

  * int num = 100; int a[] = new int[3];

  * System.out.print("3位的水仙花数有:\t");

  * while (num <= 999) {

  *         int sum =0;

  *         a[0] = num / 100 % 10;

  *         a[1] = num / 10 % 10;

  *         a[2] = num % 10;

  *  for (int i = 0; i < 3; i++) {

  *      sum = sum + (int) Math.pow(a[i], 3);

  *  }

  *  if (num ==sum) {

  *      System.out.print(num + "\t"); } num++;

  *      }

  *  }

  */

  public static void main(String[] agrs) {

  System.out.print("Input N:");

  Scanner input = new Scanner(System.in);

  int N = input.nextInt();

  for (int i = 3; i <= N; i++) {

  int a[] = new int[N];

  int num = (int) Math.pow(10, i - 1) + 1;

  System.out.print(i + "位的水仙花数有:\t");

  while (num <= Math.pow(10, i)) {

  int sum = 0;

  for (int j = 0; j < i; j++)

  a[j] = (int) (num / Math.pow(10, j) % 10);

  for (int j = 0; j < i; j++) {

  sum = sum + (int) Math.pow(a[j], i);

  }

  if (num == sum) {

  System.out.print(num + "\t");

  }

  num++;

  }

  System.out.print("\n");

  }

  }

  }


第2个回答  2015-09-25
public class Yugi {
    public static void main(String[] args){
        for(int i = 100; i < 1000; i++){
            int b = i / 100;
            int s = i % 100 / 10;
            int g = i % 10;
            if(b * b * b + s * s * s + g * g * g == i){
                System.out.println(i);
            }
        }
    }
}

本回答被网友采纳
第3个回答  2015-09-25
  public class TestNarcissus {
public static void main(String[] agrs) {
int n = 3;
for (int i = 3; i <= n; i++) {
int a[] = new int[n];
int num = (int) Math.pow(10, i - 1) + 1;
System.out.print(i + "位的水仙花数有:\t");
while (num <= Math.pow(10, i)) {
int sum = 0;
for (int j = 0; j < i; j++)
a[j] = (int) (num / Math.pow(10, j) % 10);
for (int j = 0; j < i; j++) {
sum = sum + (int) Math.pow(a[j], i);
}
if (num == sum) {
System.out.print(num + "\t");
}
num++;
}
System.out.print("\n");
}
}
}
相似回答