判断一个数是否是五角星数

示例如下:

/**
 * Java输出五角星数
 * 如果一个 5位数,它的每个位上的数字的 5 次幂之和等于它本身。那么ta就是一个五角星数。
 * @author lxf
 */
public class fivePointStar {

    //一个数的五次方
    private static int fiveStarNumber(int n) {
        return n * n * n * n * n;
    }

    private static Boolean isStarNumber(int number) {
        //基本数据类型转换为String
        String str = String.valueOf(number);
        //将字符串转换为字符数组
        char[] queue = str.toCharArray();
        int sum = 0;
        for (int i = 0; i < queue.length; i++) {
            sum = sum + fiveStarNumber(Integer.parseInt("" + queue[i]));
        }
        //返回 sum是否等于number的布尔值
        return sum == number;
    }

    public static void main(String[] args) {
        System.out.println("StarNumber:");
        for (int i = 10000; i < 100000; i++) {
            if (isStarNumber(i))
                System.out.print(i + "\t");
        }
    }
}
posted @ 2021-09-17 11:48  xiaolifc  阅读(466)  评论(0)    收藏  举报