JavaScript关于函数的小挑战

题目

回到两个体操队,即海豚队和考拉队! 有一个新的体操项目,它的工作方式不同。

每队比赛3次,然后计算3次得分的平均值(所以每队有一个平均分)。

只有当一个团队的平均分至少是另一个团队的两倍时才会获胜。否则,没有球队会赢!

  1. 创建一个箭头函数 "calcAverage "来计算3个分数的平均分。
  2. 使用该函数计算两队的平均分
  3. 创建一个函数'checkWinner',将每队的平均分数作为参数('avgDolhins'和'avgKoalas'),然后根据上面的规则,将赢家和胜利点数一起记录到控制台。例子: "考拉队获胜(30 vs. 13)"。
  4. 使用'checkWinner'函数来确定数据1和数据2的赢家。
  5. 忽略这次的平局。

测试数据1:海豚得分44,23和71。考拉得分65,54和49

测试数据2:海豚得分85,54和41。考拉的得分是23、34和27

提示:要计算3个数值的平均值,把它们加在一起,然后除以3。

提示:要检查数字A是否至少是数字B的两倍,请检查A>=2*B,将其应用于球队的平均得分。

答案

1:

javascript 复制代码
const calcAverage = (num1, num2, num3) => {
  return (num1 + num2 + num3) / 3;
};

console.log(
  `海豚队的平均分数为${calcAverage(44, 23, 71)},考拉对的平均分数为${calcAverage(
    65,
    54,
    48
  )}`
);
javascript 复制代码
const calcAverage = (num1, num2, num3) => (num1 + num2 + num3) / 3;

const avgDolhins = calcAverage(44, 23, 71);
const avgKoalas = calcAverage(65, 54, 49);

const checkWinner = function (avgDolhins, avgKoalas) {
  if (avgDolhins >= 2 * avgKoalas) {
    console.log(`海豚队获胜(${avgDolhins} vs. ${avgKoalas})`);
  } else if (avgKoalas >= 2 * avgDolhins) {
    console.log(`海豚队获胜(${avgDolhins} vs. ${avgKoalas})`);
  } else {
    console.log("没有球队获胜");
  }
};

checkWinner(avgDolhins, avgKoalas);

● 我们可以给数字大一点

javascript 复制代码
const calcAverage = (num1, num2, num3) => (num1 + num2 + num3) / 3;

const avgDolhins = calcAverage(100, 200, 88);
const avgKoalas = calcAverage(65, 54, 49);

const checkWinner = function (avgDolhins, avgKoalas) {
  if (avgDolhins >= 2 * avgKoalas) {
    console.log(`海豚队获胜(${avgDolhins} vs. ${avgKoalas})`);
  } else if (avgKoalas >= 2 * avgDolhins) {
    console.log(`海豚队获胜(${avgDolhins} vs. ${avgKoalas})`);
  } else {
    console.log("没有球队获胜");
  }
};

checkWinner(avgDolhins, avgKoalas);
相关推荐
智码看视界14 分钟前
老梁聊全栈系列:Vue3核心与组合式API深度解析
javascript·vue.js·ecmascript
想吃火锅10058 小时前
【leetcode】405.数字转换为十六进制数js
开发语言·javascript·ecmascript
专注VB编程开发20年8 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
cfm_29148 小时前
JVM GC垃圾回收初步了解
java·开发语言·jvm
~小先生~9 小时前
Python从入门到放弃(一)
开发语言·python
许彰午9 小时前
17_synchronized关键字深度解析
java·开发语言
z落落9 小时前
C# 泛型接口和泛型类+泛型约束
开发语言·c#
阿正的梦工坊9 小时前
【Rust】02-变量、不可变性与基础类型
开发语言·后端·rust
阿正的梦工坊10 小时前
【Rust】08-集合类型、字符串与迭代器入门
开发语言·rust·c#
FuckPatience10 小时前
C# 使用泛型协变将派生类类型替换为基类类型
开发语言·c#