javascript解决问题:红白球共25个,白黑球共31个,红黑球共28个,求三种球各有多少?求红白黑球的个数;

前端入门学习遇到的问题:

        刚刚学习了js中的两个循环语句for和while,因为几天前就接触了for循环,自己用起来更加顺手,今天找了几道入门的编程问题,其中有一道遇到了问题,题目如下:

红白球共25个,白黑球共31个,红黑球共28个,求三种球各有多少?求红白黑球的个数;

方法1:

var red, black, white;

for (red = 1; red <= 25; red++) {

        black = 28 - red; //for (black = 1; black <= 28; black++){}

         white = 25 - red;//for (white = 1; black <= 25; black++){}

                if (red + white == 25 && white + black == 31 && red + black == 28) {

                         console.log('红球:' + red + '个;' + '黑球:' + black + '个;' + '白球:' + white + '个');

}

        一个最基础的for循环语句,在数学问题中也就是一个二元一次方程组,设红球为x,黑球为y,白球为z,则x+z=25,y+z=31,x+y=28。解方程得:红球:11个;黑球:17个;白球:14个。通过上面的两个for循环和一个判断语句也能轻松获得结果;

        解题思路:从红球开始为1开始进入第一个for循环的第一次循环,黑球为black = 28 - red;,白球为 white = 25 - red;(这里的黑球和白球也可以用两个for循环,从1个开始进入循环然后判断,但是该方法多进行了很多次运算)。进入if判断语句同时满足三个条件则输出三种球的个数。

        但是遇到问题的是刚接触的while循环语句,前面也用while写了几道题都没有出现问题,下面是最后更改的正确结果以及自己遇到问题以后的查找问题的思路;

方法2

var red = 1;

while (red <= 25) {

        var black = 28 - red;

        var white = 25 - red;

                if (red + white == 25 && white + black == 31 && red + black == 28) {

                        console.log('红球:' + red + '个;' + '黑球:' + black + '个;' + '白球:' + white + '个');

                }

                red++;

                continue;

}

以上为最后的正确方案;最初的错误版本为: 

        因为是刚开始学习和练习,就把所有的while循环都写出来了,等到测试输出结果的时候就一直报错,我就开始找错误,从最开始的变量名开始找,看看三个变量名从头到位是否有写错的,找了一遍没有,然后就看循环语句的判断条件还是没有,if条件也是我从方法1直接复制过来的,也没有错误;找了一遍没有任何错误,看样子不是代码错误。

        然后我就把方法1复制在了最下面运行,可以运行出来答案,就说明上面的内容没有错误,因为js是一行一行的编译运行,如果上面出现错误,那么下面就不可能运行出来;所以我就还是回到上面的代码,开始想是不是没有满足if条件的内容啊!然后就把整个if语句注释,写了一个输出red的值,就能够运行出来了,果然还有if语句出现了问题,然后我就把&&换成了||这样的话应该能运行出来很多结果,但是只出现了两个red为1的两组数据,这是就发现了变量初始化的问题,应该紧贴着while上面来写,最后换了位置就成功运行出来了。

总结:刚刚接触js语言,从数学的解题思路开始,然后利用相关代码编写,然后自己不断优化、简写自己的代码,感觉很有趣!

  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
实 验 报 告 "班 级 "电子商务一"学 号"10112020 "姓 名 "周友贵 " " "班 " " " " " "课程名称 "网络营销 "开课实验室"琼州学院旅"实验时间 "2011-9-25 " " " " "游实验班 " " " "实验项目名称 "研究网络调研的报告 " "实验性质 "验证性( ) 综合性( ) 设计性( ) " "成 绩 " "指导老师签名 "吴清燕 " "实验目的: " "1.理解网络商务信息的特点。 " "2.掌握收集网络商务信息的手段。 " "3.掌握搜索中的搜索引擎选择和关键字优化的技巧理解网络营销的任务与 " "目标。 " " " "实验条件:琼州学院旅游实验室 电子阅览室 图书馆 " "实验要: " "(1)企业此次调研的目标。 " "(2)企业产品网络市场环境分析。 " "(3)拟定此次网络调研的内容和步骤。 " "(4)收集竞争对手的详细资料。 " "实验内容: " "花香袭人"是上海一家专营花卉业务的商贸公司,主营四季鲜花。刚刚建成 " "了自己的网站"袭人花店" 。但每天的访问量都是一位数,有时甚至为零。 " "请通过网络商务信息的收集了解花卉的网络市场状况及竞争对手的情况。 " "实验过程: " "企业此次调研的目标:花卉业务的商贸公司定位,了解花卉的网络市场状况" "及竞争对手的情况 " "市场的调研 " "(1)国内外花卉发展动态 " "随着全化的发展,以肯尼亚、中国、哥伦比亚为代表的发展中国家逐渐成" "为全花卉种植中心,其中仅肯尼亚就占有欧盟市场31%的份额。但是由于 " "缺乏专利花卉品种研发能力,这些国家仅是世界花工的角色。优越的自然环" "境和低廉的人力成本,是肯尼亚、中国、哥伦比亚等亚非发展中国家花卉种" "植业崛起的关键。 " "我国花卉商品化起步较晚,近几年,随着人民生活水平的提高,旅游业的迅" "速发展,城市绿化标准日益提高,对花卉需逐年上升。全国各地在调整农" "村产品结构中,把花卉作为提高农民收入和争创外汇的有效途径,作为一个" "新的产业进行培养。 " "(2)市场需状况 " "从全范围看,花卉业是一个生机勃勃的朝阳产业, 有一定条件的发达国 " "家和发展中国家,都在积极发展,满足内需,组织出口。 我国具有发展花 " "卉产业得天独厚的资源条件和比较优势,因此,发展势头强劲,前景广阔。" "随着我国国民经济持续快速发展, 人民生活水平不断提高,尤其是农业产 " "业结构实施战略性调整, 以及城市园林建设步伐加快,我国花卉业出现了 " "快速发展的新局面。 " "(3)市场调查 " "1、品种结构向高档化发展,价格日趋合理, " "近年来大量引进并生产优新品种,鲜切花如非洲菊、鹤望兰、百合、郁金香" "、鸢尾、热带兰、高档切叶等;盆花如凤梨类、一品、安祖花、蝴蝶兰、" "大花蕙兰等,品种逐渐高档化,花色则多样、淡雅。花卉市场的价格稳中有" "降,尤以香石竹、月季等大宗鲜切花产品的降幅较大(应视为合理性的降价" "),分别达30%和50%。 " "2、产业化区域性分工,花卉流通形成大市场, " "从国内花卉的生产格局和中远期发展趋势来看,鲜切花生产将以云南、广东" "、上海、北京、四川、河北为主;浙江、江苏等地的绿化苗木在国内占有重" "要份额;盆花则遍地开花,并涌现一批地方优势名品,如江苏华盛的杜鹃、" "天津的仙客来、广东的兰花、福建的多肉植物等。目前,昆明、上海是香石" "竹、月季和满天星等的主产地,云南省鲜花种植面积就已发展到2.4万亩, " "鲜切花产量达22亿枝;广东则利用其气候优势大量生产冬季的月季、菊花、" "唐菖蒲及高档的掌、百合等,成为国内最大的冬春鲜花集散地。随着采后" "低温流通和远距离运输业的迅速发展,这些地区的优势更加明显,必然出现" "大生产、大市场的格局 " "3、重视优质种苗、种基地的建设 " " 上海市花卉良种试验场投资1200万元建起80亩种苗繁殖基地,年生产 " "香石竹种苗500万株;云南省农科院花卉研究中心生产的花卉种苗包括香石 " "竹、满天星、非洲菊和彩色马蹄莲等10余个种类100多个品种,年销售种苗1" "200万株;辽宁、浙江、甘肃等省利用冷凉地气候或山地气候资源,采取公 " "司加农户的形式,发动农民繁育种及育苗等,取得较好的社会和经济效益" "。一批新兴的国家级花卉产业化基地,均起点高、规模大,集科研、生产、" "开发于一体,提高了优质种苗、种生产的国产化供应能力。 " " " "4、科技水平不断提高,科技种花深入人心 " "从农业的科技贡献率看,发达国家一般在80%以上,而我国低于50%,花卉业" "更是依靠科技进步的农业产业。"九五"期间,我国的花卉科技人员,经不懈"
### 回答1: 根据题意,我们可以列出如下方程组: + 白 = 25 白 + = 31 + = 28 将第一个方程式左侧的数量表示为 = 25 - 白,代入第三个方程式得: (25 - 白) + = 28 化简得: = 3 + 白 - 将上式代入第二个方程式得: 白 + (3 + 白 - ) = 31 化简得: 2白 - = 28 将第一个方程式左侧的白球数量表示为白 = 25 - ,代入上式得: 2(25 - ) - = 28 化简得: = 9 代入第一个方程式得: 白 = 16 代入第二个方程式得: = 15 因此,有9个,白球有16个,有15个。 ### 回答2: 这道题是一道三元一次方程组的问题。 设有r个,白球有w个,有b个,根据题意可以得到以下三个方程式: r + w = 25 (白球25个) w + b = 31 (白、31个) r + b = 28 (28个) 我们可以用消元法来解题,下面是解题过程: (1)将第一个式子化为 r = 25 - w,代入第三个式子,得到: 25 - w + b = 28 化简后可得:b - w = 3 (第四个式子) (2)将第二个式子化为 w = 31 - b,代入第四个式子,得到: b - (31 - b) = 3 化简后可得:b = 17 (第五个式子) (3)将第二个式子化为 w = 31 - 17 = 14,代入第一个式子,得到: r + 14 = 25 化简后可得:r = 11 所以,最终的答案为: 有11个,白球有14个,有17个。 ### 回答3: 这是一道利用不完全信息的线性方程组问题。我们设、白、分别为 $x_1$,$x_2$,$x_3$ 个,那么我们可以列出下面的三个线性方程式: $$ \begin{cases} x_1+x_2=25 &(1)\\ x_2+x_3=31 &(2)\\ x_1+x_3=28 &(3) \end{cases} $$ 我们可以用代数方式解出每一种颜色的个数。首先,从 (1) 式中可以得到 $x_1=25-x_2$。将这个表达式代入 (3) 式,得到 $$ 25-x_2+x_3=28 $$ 从中得到 $x_2-x_3=-3$,再将这个表达式代入 (2) 式,得到 $$ 2x_2-3=31 $$ 解出 $x_2=17$。然后再回代 (1) 式,得到 $x_1=8$。最后再用 (2) 式来检验一下,得到 $x_3=14$。所以,、白、三种分别有 $8$,$17$,$14$ 个。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值