A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© xunhaifeng 中级黑马   /  2015-9-3 16:53  /  174 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

这是打印水仙花数的程序,想定义一个数组装那些水仙数。数组长度在不知道到底有多少水仙花数的情况应该怎么定义,打印的时候那些装进去的0 怎么去掉
class Test0831Demo2 {
        public static void main(String[] args) {
                int[] arr =new int[10];
                int num = getFlower(arr);
                System.out.println("count = " + num);
                print(arr);
        }
        public static int  getFlower(int[] arr) {
                int pos = 0;
                int count = 0;
                for (int i = 100; i <1000 ; i++ ) {
                        int a = i % 10;                                //个位
                        int b = i /10 % 10;                //十位
                        int c = i / 100;                //百位

                        if( i == a*a*a + b*b*b + c*c*c) {
                                arr[pos] = i;
                                pos++;
                                count++;
                        }
                }
                return count;
        }
        public static void print(int[] arr) {
                System.out.print("[" );
                for (int i = 0;i < arr.length ; i++) {
                        if (arr[i] != 0 ) {
                                System.out.print(arr[i] + "," );
                        } else {
                                System.out.print(arr[i] + "]" );
                        }
                       
                }
       
        }

}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马