经典问题:鸡兔同笼的简单解决

219 阅读1分钟

我正在参加「码上掘金挑战赛」详情请看:码上掘金挑战赛来了!


写在前面

🍕 问题描述

鸡兔同笼,是中国古代著名典型趣题之一。

今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?

有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问笼中各有多少只鸡和兔?

我们知道,这道题的本质是二元方程,本文用vue写一下这个问题的解决方法。

🍿 解决思路

for循环+if语句

🌭 学习目的

可以帮助js新手学习和理解for循环,以及通过实现一个简单的逻辑,学会思考逻辑实现的过程。

代码块

代码说明

我们假设有x只鸡,y只兔

那么x+y=35,2x+4y=94,需要x,y同时满足这两个条件

我们从兔子有0只(x=0)开始验证,y=35-x,满足2 * x + 4 * (35 - x) === 94的x即是鸡的数量,此时的y就是兔子的数量。

代码如下:

  <div class="wrap">
    <h1>题目</h1>
    <div class="subject">
      有若干只鸡兔同在一个笼子里,从上面数,有{{ headNum }}个头,从下面数,有{{
        footNum
      }}只脚。问笼中各有多少只鸡和兔?
    </div>
    <h1>答案</h1>
    <div class="answer">{{ answer }}</div>
    <div class="getAnsBtn">
      <button @click="getAnswer">获取答案</button>
    </div>
  </div>
getAnswer() {
  let x, y;
  for (x = 0; x <= 35; x++) {
    y = 35 - x;
    if (2 * x + 4 * (35 - x) === this.footNum) {
      this.answer = `有${x}只鸡,${y}只兔`;
    }
  }
},

image.png

写在后面

以上就是所有的代码以及代码说明。