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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© mengqishiye 中级黑马   /  2016-4-10 22:39  /  1942 人查看  /  14 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 mengqishiye 于 2016-4-10 22:43 编辑

这个是最近刚发的教材~~~

开玩笑。。。

不过这个题 是今天班主发的一道题,今天是休息日,大家有的复习,有的做作业,有的出去玩了。
班主在qq群里发了这道题:



让大家娱乐的
一开始有人在纸上算除了一个结果,但是很多人觉得不过瘾,我想怎么不用程序做呢?
分析一下,给每个空位置 定义一个变量 然后for循环遍历整数 符合式子条件的输出,对吧!
好激动~
然后:


当当当当~~~
结果已经出来了,虽然是个简单的题,但是还是遇到了一些问题,比如我本来打算每个变量的取值范围为0-100,结果运行电脑好像没反应。。。
想了一下,估计是电脑运算不了这么大的吧。。电脑也会累。。
就把值改为0-20
还是不行,初始值不能为0,因为有一个除法运算,除数不能为0  !!
额。。好吧,改了这些总算是有结果了。。就是上图啦。不过我还是想这到底计算了多少次呢?搞得计算机这么累100的范围都不行
然后我就给加了好多输出语句看一看。。不看不知道一看吓一跳,如果取值范围0-30的话,当a1取到5的时候,a8已经执行了1000亿次!!!我的天。。。
当然时间也是需要很久。。然后我就又改回了0-20  这就是代码啦。(计数器用int竟然会不够用  *-*  。。)
这就是娱乐数学题啦,挺好玩的!
public class Test2 {
        public static void main(String[] args) {
                int count = 0;
                int count1=0;
                int count2=0;
                int count3=0;
                int count4=0;
                int count5=0;
                int count6=0;
                int count7=0;
                long count8=0;
               
                for(int a1=0;a1<20;a1++){
                        count1++;
                        if(count1%100000000==0)
                        System.out.println("a1= "+a1+" a1执行次数: "+count1/100000000+"亿");
                        for(int a2=0;a2<20;a2++){
                                count2++;
                                if(count2%100000000==0)
                                System.out.println("a2= "+a2+" a2执行次数: "+count2/100000000+"亿");
                                for(int a3=0;a3<20;a3++){
                                        count3++;
                                        if(count3%100000000==0)
                                        System.out.println("a3= "+a3+" a3执行次数: "+count3/100000000+"亿");
                                        for(int a4=0;a4<20;a4++){
                                                count4++;
                                                if(count4%100000000==0)
                                                System.out.println("a4= "+a4+" a4执行次数: "+count4/100000000+"亿");
                                                for(int a5=0;a5<20;a5++){
                                                        count5++;
                                                        if(count5%100000000==0)
                                                        System.out.println("a5= "+a5+" a5执行次数: "+count5/100000000+"亿");
                                                        for(int a6=1;a6<20;a6++){
                                                                count6++;
                                                                if(count6%100000000==0)
                                                                System.out.println("a6= "+a6+" a6执行次数: "+count6/100000000+"亿");
                                                                for(int a7=0;a7<20;a7++){
                                                                        count7++;
                                                                        if(count7%100000000==0)
                                                                        System.out.println("a7= "+a7+" a7执行次数: "+count7/100000000+"亿");
                                                                        for(int a8=0;a8<20;a8++){
                                                                                count8++;
                                                                                if(count8%1000000000==0)
                                                                                System.out.println("a1="+a1+",a2="+a2+
                                                                                " a8执行次数: "+count8/1000000000+"十亿"+",a7执行次数:"+count7+",a6执行次数:"+count6);
                                                        if(a1+a2-9==4 && a3-a4*a5==4 && a6+a7-a8==4 && a1+a3/a6==4 && a2-a4*a7==4 && 9-a5-a8==4 ){
                                                                                        count++;
        System.out.println("第"+count+"个 答案"+ "a1="+a1+" a2="+a2+" a3="+a3+" a4="+a4+" a5="+a5+" a6="+a6+" a7="+a7+" a8="+a8);
                                                                                }
                                                                        }
                                                                }
                                                        }
                                                }
                                        }
                                }
                        }
                }
        }
}

14 个回复

倒序浏览
好屌的样子呦
回复 使用道具 举报
呀!厉害厉害  斯国一
回复 使用道具 举报
看到楼主的代码,只想说666
回复 使用道具 举报
学的咋样了,交流交流哇!
回复 使用道具 举报
这么叼,我看着都怕
回复 使用道具 举报
这上面的图 很吊啊
回复 使用道具 举报
好厉害,真心的佩服你!!
回复 使用道具 举报
jwdream 来自手机 中级黑马 2016-4-11 23:55:12
9#
卧槽,看着好叼的样子
回复 使用道具 举报
jwdream 发表于 2016-4-11 23:55
卧槽,看着好叼的样子

哈哈,其实很简单,不过也挺好玩
回复 使用道具 举报
aomingchao 发表于 2016-4-11 23:47
好厉害,真心的佩服你!!

加油 加油
回复 使用道具 举报
流弊流弊
回复 使用道具 举报
aomingchao 发表于 2016-4-11 23:47
好厉害,真心的佩服你!!

感谢,加油!
回复 使用道具 举报

感谢,加油!
回复 使用道具 举报
Erry 中级黑马 2016-4-23 00:11:48
15#
好NB,所得斯来
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马