JavaScript的for循环语句练习之解决鸡兔同笼问题

JavaScript的for循环语句练习之鸡兔同笼

上一篇文章我们说到了JavaScript中的for循环语句,今天我们来说一下for循环的有关练习,来加强一下对for循环的使用,因为for循环在后面整个的JavaScript中都很重要,比如说tab切换,轮播图,二级联动,冒泡排序等。当然单纯的for循环也只是一个语法的问题,然后重复执行代码,或者是遍历某一些东西。比如:

1.利用for循环打印0到9:

    for(var i=0;i<10;i++){
        console.log(i);
    }

2.利用for循环遍历是数组项:

    var arr=["张三","李四","王五","赵六"];
    for(var i=0;i<arr.length;i++){
        console.log(arr[i]);
    }

接下来我们说一下怎样用for循环来算一个上学时的数学问题鸡兔同笼。问题是箱子里面同时有鸡和兔子,鸡有两条腿,兔子有四条腿,假设箱子里共有50条腿,问分别有多少只鸡和兔子?
在这里插入图片描述

    // 其实就是一个中学的数学  二元一次函数    4x + 2y =50
    /*  
    解题思路:
    通过 for循环  找到所有的情况
    1.假设 临界值
    2.根据临界值  编写第一层for循环
    3.找到另外一个临界值  嵌套第二个for循环
    */ 

    // 1.假设兔子为x  鸡为y
    //找兔子可能存在的情况
    for(var x=0;x<13;x++){
        // 每种兔子可能存在的情况下,对应的 鸡的数量
        for(var y=0;y<=25;y++){
            if(4*x+2*y==50){
               document.write("兔子的数量为:"+x+",鸡的数量为:"+y+"<br/>"); 
            }
        }
    }
    
    
    // 2.假设鸡为x  兔子为y
    //找鸡可能存在的情况
    for(var x=0;x<26;x++){
        // 每种鸡可能存在的情况下,对应的 兔子 的数量
        for(var y=0;y<=12;y++){
            if(2*x+4*y==50){
               document.write("鸡的数量为:"+x+",兔子的数量为:"+y+"<br/>"); 
            }
        }
    }

通过上面的两个for循环进行嵌套,即可将这个问题的所有结果计算出来。问题的关键是要知道两个for循环分别起到了什么作用?外面的for循环主要是起到一个假设兔子或者是鸡存在的情况,里边的for循环用来找到对应的可能存在的情况。

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章