注册 登录
编程论坛 JAVA论坛

java输出水仙花数

没睡醒 发布于 2015-07-08 09:07, 927 次点击
java新手,刚学到循环,需要做个水仙花数的题!但是一点思路都没有!大神给个思路!分析分析!
4 回复
#2
calix2015-07-08 09:57
其实知道原理,是比较简单的,两下面种思路仅供参考
程序代码:
假设范围是100--999
方法1,逻辑比较清晰
public class Main {
    public static void main(String[] args) {
        int a, b ,c;
        for(int i = 100; i < 1000; i++){
            a = i / 100;
            b = i / 10 % 10;
            c = i % 10;
            if(a * a * a + b * b *b + c * c * c == i){
                System.out.println(i);
            }
        }
    }
}
方法2,效率好点
public class Main {
    public static void main(String[] args) {
        for(int a = 1; a < 10; a++){
            for(int b = 0; b < 10; b++){
                for(int c = 0; c < 10; c++){
                    int num = 100 * a + 10 * b + c;
                    if(a * a * a + b * b * b + c * c *c == num){
                        System.out.println(num);
                    }
                }
            }
        }
    }
}

#3
没睡醒2015-07-08 17:10
回复 2楼 calix
谢谢!很有用!
#4
日知己所无2015-07-11 23:57
http://bbs.
#5
邓士林2015-07-13 17:32
学写了
1