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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小骆驼 中级黑马   /  2015-6-21 23:14  /  521 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

打印出所有的"水仙花数"。
        所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:
        153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
class Test
{
        public static void main(String[] args)
        {
                for(int x=100;x<1000;x++)
                {
                        int g = x%10;//定义变量g,通过三位数x%10获取个位 数字
                        int s = (x/10)%10;//获取十位上的数字
                        int b = x/100;//获取百位上的 数字
                        if ((100*b+10*s+g)==(b*b*b+s*s*s+g*g*g))
                        {
                                int y = x;//定义一个变量y记录“水仙花数”
                                System.out.println(y);
                        }
                }
        }
}

9 个回复

倒序浏览
这道题我见过
回复 使用道具 举报
你这是要交流什么?
回复 使用道具 举报
谢谢分享!
回复 使用道具 举报
我只是默默的赚个 黑马币
回复 使用道具 举报
学习了。。。
回复 使用道具 举报
因为你的每次循环里,都没有对x重新赋值,我觉得不需要int y = x;这步操作,直接打印x就行
回复 使用道具 举报
感谢分享
回复 使用道具 举报
景彬 中级黑马 2015-6-22 17:53:03
9#
嗯嗯,以前见过,温习了,谢谢楼主~
回复 使用道具 举报
hoop.zeng 发表于 2015-6-22 11:52
因为你的每次循环里,都没有对x重新赋值,我觉得不需要int y = x;这步操作,直接打印x就行 ...

貌似挺对呀,我这里有点啰嗦
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马