黑马程序员技术交流社区

标题: 求高手能给我指点一下,最好说加注释。 [打印本页]

作者: 魏冬    时间: 2012-11-11 10:20
标题: 求高手能给我指点一下,最好说加注释。
本帖最后由 魏冬 于 2012-11-14 11:30 编辑

package computer;
/*
* 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,
* 其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",
* 因为153=1的三次方+5的三次方+3的三次方。
*
* */
public class 水仙花数 {
        public static void main(String[] args){
                int num,num2,num3;
                for(int m=100;m<1000;m++){
                        num3=m/100;//1
                        num2=m%100/10;//2
                        num=m%10;//3
                        if(num*num*num+num2*num2*num2+num3*num3*num3==m){
                                System.out.println(m+"是水仙花数");
                        }
                }
        }
}

作者: 朱宏青    时间: 2012-11-11 10:42
意义不明 话说你水的有点多啊
作者: 葛旭东    时间: 2012-11-11 12:22
int num,num2,num3;
            for(int m=100;m<1000;m++){
                    num3=m/100;    //num3表示百位数
                    num2=m%100/10;   //num2表示十位数
                    num=m%10;   //num表示个位数
                    if(Math.pow(num, 3)+Math.pow(num2, 3)+Math.pow(num3, 3)==m){      //如果个位数、十位数、百位数的3次方之和等于该数,那么它就是水仙花数
                            System.out.println(m+"是水仙花数");
                    }
作者: 小学生0987    时间: 2012-11-11 12:33
用for循环遍历从100到1000的数字,也就是所有三位数,num3=m/100算出百位数字,num2=m%100表算出十位数字,num=m%10算出第个位数字,if判断如果三个数立方和等于自身,就输出下面的语句。
作者: 陈军    时间: 2012-11-12 08:43
其实你仔细想下也容易清楚。
每个步骤每个步骤的看。要有耐心。
我把注释放后面了,你看吧

public class 水仙花数 {
        public static void main(String[] args){
                int num,num2,num3;
                for(int m=100;m<1000;m++){
                        num3=m/100 ;        //得到百位数
                        num2=m%100/10;  // m%100得到十位和个位数字的组合。再/10得到十位数字
                        num=m%10;         //得到个位数字
                        if(num*num*num+num2*num2*num2+num3*num3*num3==m){ //根据得到的个位,十位,百位数字判断
                                System.out.println(m+"是水仙花数");
                        }
                }
        }
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2