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/

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