package com.gem.homework;
import java.util.Scanner;
public class T6NarcissisticNumber {
public static void main(String[] args) {
// TODO Auto-generated method stub
int index = 0, i, narcissisticNumber, digit,min,max;
Scanner scan = new Scanner(System.in);
//System.out.println("请输入您要的水仙花位数 : ");
System.out.println("请输入您想要的水仙花数起始点 : ");
min = scan.nextInt();
System.out.println("请输入您想要的水仙花数结束点 : ");
max = scan.nextInt();
//digit = scan.nextInt();
for (int j = min; j < max; j++) {
int s = 0;
index = getIndex(j);
int[] arr = new int[index];
narcissisticNumber = j;
//计算各个位上数字的index次方之和
for (i = 0; i < index; i++) {
arr[i] = narcissisticNumber % 10;
narcissisticNumber = narcissisticNumber / 10;
s = (int) (s + Math.pow(arr[i], index));
}
// System.out.print(" ");
// System.out.print(j);
// System.out.print(" ");
// System.out.println(s);
//
if (j == s) {
System.out.println(j);
}
}
// System.out.println(index);
}
//求出水仙花数位数
static int getIndex(int num) {
int index = 0;
while (num != 0) {
num = num / 10;
index++;
}
return index;
}
}
水仙花数
最新推荐文章于 2024-10-23 23:04:28 发布