JavaScript的for循环语句练习之解决小马过河的问题

简介: JavaScript的for循环语句练习之解决小马过河的问题上篇文章我们说了怎么计算数学问题鸡兔同笼,这边文章咱们来说一下稍微再加大写难度的问题,小马过河。问题是现在有一群马,大马可以驮2石粮食,中马可以驮1石粮食,两头小马才可以驮1石粮食,现在要用100匹马,驮100石粮食,该如何调配?在这里插入图片描述1.解决这个问题主要是要先确定三种马加起来一共有100只,同时驮的粮食加起来也得是100。 // 假设大马为x,中马为y,小马为z 那现在便可得出函数 x+y+z=100 2x+y+z÷2=100 // 转换为for循环解决则变成了: // 假设

JavaScript的for循环语句练习之解决小马过河的问题




上篇文章我们说了怎么计算数学问题鸡兔同笼,这边文章咱们来说一下稍微再加大写难度的问题,小马过河。问题是现在有一群马,大马可以驮2石粮食,中马可以驮1石粮食,两头小马才可以驮1石粮食,现在要用100匹马,驮100石粮食,该如何调配?


在这里插入图片描述

图片.png


1.解决这个问题主要是要先确定三种马加起来一共有100只,同时驮的粮食加起来也得是100。


// 假设大马为x,中马为y,小马为z 那现在便可得出函数 x+y+z=100 2x+y+z÷2=100// 转换为for循环解决则变成了:// 假设大马存在的可能 for (varx=0; x<=50; x++) {
// 假设大马存在的情况下  对应的中马存在的情况for (vary=0; y<=100; y++) {
// 对应小马存在的情况for (varz=0; z<=200; z++) {
if (x+y+z==100&&2*x+y+z/2==100) {
document.write("大马有:"+x+"匹,中马有:"+y+"匹,小马有:"+z+"匹"+"<br/>");
                }
            }
        }
    }


上面的代码代码虽说解决了问题,但是太过于繁琐,因为我们已经得出了结论,x+y+z=100,所以代码可以简化如下:



for (varx=0; x<=50; x++) {
// 假设大马存在的情况下  对应的中马存在的情况for (vary=0; y<=100; y++) {
// 对应小马存在的情况varz=100-x-y;
if (2*x+y+z/2==100) {
document.write("大马有:"+x+"匹,中马有:"+y+"匹,小马有:"+z+"匹"+"<br/>");
            }
        }
    }


解决此类问题关键在于梳理好所有的判断条件,然后进行计算,同时注意简化代码。


视频讲解链接:
https://www.bilibili.com/video/BV12p4y1Q7rN

相关文章
|
3月前
|
存储 JavaScript 前端开发
JS项目练习
JS项目练习
|
5月前
|
JavaScript 前端开发
JavaScript的循环语句有哪些?
JavaScript的循环语句有哪些?
|
1月前
|
JavaScript 前端开发
编程笔记 html5&css&js 079 JavaScript 循环语句
编程笔记 html5&css&js 079 JavaScript 循环语句
|
2月前
|
移动开发 前端开发 JavaScript
H5+CSS3+JS逆向前置——4、DIV+CSS绘制旗帜练习
H5+CSS3+JS逆向前置——4、DIV+CSS绘制旗帜练习
21 0
|
3月前
|
存储 JavaScript
JS中相等(==)和等全(===)的区别与练习
JS中相等(==)和等全(===)的区别与练习
21 1
|
3月前
|
前端开发 JavaScript
【面试题】JavaScript 循环语句
【面试题】JavaScript 循环语句
|
4月前
|
JavaScript 索引
Vue.js中循环语句的使用方法和相关技巧
Vue.js中循环语句的使用方法和相关技巧
54 1
Vue.js中循环语句的使用方法和相关技巧
|
5月前
|
JavaScript
js对象案例练习
js对象案例练习
36 0
|
6月前
|
JavaScript 前端开发
带你读《现代Javascript高级教程》二十四、正则表达式的常见问题与练习(1)
带你读《现代Javascript高级教程》二十四、正则表达式的常见问题与练习(1)
|
6月前
|
JavaScript 前端开发
带你读《现代Javascript高级教程》二十四、正则表达式的常见问题与练习(2)
带你读《现代Javascript高级教程》二十四、正则表达式的常见问题与练习(2)