java 水仙花数

    xiaoxiao2021-04-19  79

    水仙花数指的是 一个n位数(n>=3),他的每个位上的数字的n次幂之和等于他的本身。(例如:1^3+5^3+3^3=153) public static void main(String[] args) {         for(BigInteger number = new BigInteger("0"); true ;             number = number.add(new BigInteger("1"))){             BigInteger sumNumber = new BigInteger("0");             char[] digits = number.toString().toCharArray();             for(char digit : digits){                 //利用Character.digit方法分别得到个十百千位的数                 sumNumber = sumNumber.add(BigInteger.valueOf(Character.digit(digit, 10))                             .pow(digits.length));             }             if(sumNumber.compareTo(number)==0){                 System.out.println(number);             }         }     }
    转载请注明原文地址: https://ju.6miu.com/read-675735.html

    最新回复(0)