Java 输入一个数判断是不是水仙花数

public class testJava1 {

    public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);
        System.out.println("请输入一个整数");
        try {
            int num = scan.nextInt();// 取出控制台输入的数
            if (isDaffodilNumber(num)) {
                //
                System.out.println(num + "是");
            } else {
                System.out.println(num + "不是");
            }
        } catch (Exception e) {
            System.out.println("必须输入整数");
        }
    }

    // 用于判断一个整数是否为水仙花数
    private static boolean isDaffodilNumber(int num) {
        boolean flag = true;
        int a = num / 100;// 取得百位数
        int b = (num / 10) % 10;// 取得10位数
        int c = num % 10;// 取得个位数
        //
        if (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) != num)
            flag = false;
        // if (a * a * a + b * b * b + c * c * c != i)

        return flag;
    }

 

posted @ 2017-07-26 21:34  毛·豆  阅读(9965)  评论(0编辑  收藏  举报