用于创建数学减法方程的简单JavaScript算法
Simple JavaScript algorithm for creating math subtraction equation
我正在尝试编写一个算法,该算法将生成一个基本的减法问题。类似于 18-10-4=4。该算法应接受以下参数:
操作数最小值、操作数最大值、结果最小值、结果最大值、操作数数
它应该为每个操作数在 oMin 和 oMax 之间选取多个随机数,并为结果选择一个介于 rMin 和 rMax 之间的随机数。所以像这样:
var generateSubtractionProblem = function (oMin, oMax, rMin, rMax, oQuantity) {
var result,
operands = []
maxDiff = oMax - (oMin * (oQuantity - 1)),
minDiff = oMin - (oMax * (oQuantity - 1)),;
// Pick result
// Generate operands within range that when subtracted produce result
if (rMax < minDiff || rMin > maxDiff) {
console.log('Cannot produce result');
return {
result: 2,
operands: [4, 2]
};
}
if (maxDiff < rMax) {
console.log('Max difference is ' + maxDiff);
rMax = maxDiff;
}
result = this.randomInRange(rMin, rMax, rPrecision);
for (var i = 0; i < oQuantity; i += 1) {
switch (i) {
case 0:
operands[i] = this.randomInRange((oMin * (oQuantity - 1)) + result, oMax, oPrecision);
break;
case 1:
operands[i] = operands[i - 1] - result;
break;
default:
operands[i] = this.randomInRange(oMin, (oMin * (oQuantity - i)), oPrecision);
break;
}
}
return {
result: result,
operands: operands
}
}
generateSubtractionProblem(5, 20, 0, 5, 3);
// { result: 4, operands: [18, 10, 4] }... 18-10-4=4
任何语言的示例都会有所帮助。
首先生成所需的结果。
接下来生成第一个操作数。它的最小值必须至少为"结果 + 操作数最小值 *(操作数 - 1)。
生成剩余的操作数。它们的范围必须在
(firstOperand - sum(otherOperands)) - (numberOfOperands - numberOfGeneratedOperands) * OperandMax
和
(firstOperand - sum(otherOperands)) - (numberOfOperands - numberOfGeneratedOperands) * OperandMin
.
相关文章:
- 简单javascript'新'关键字
- 我的剧本赢了'不能在IE中工作(甚至9)?修改复制文本的简单javascript
- 使用绑定的简单JavaScript/jQuery求和函数
- 我的简单Javascript代码可以在Safari上运行,但不能在Chrome、Firefox或Opera上运行
- DOM插入的简单javascript错误
- 简单Javascript代码中的Javascript错误
- 令人沮丧的简单 Javascript 需要帮助
- 简单 Javascript/jQuery Vimeo Froogaloop 的调试帮助
- 用于创建数学减法方程的简单JavaScript算法
- 返回“undefined”的简单JavaScript字符串变量
- 使用__proto__的简单JavaScript委派
- 使用简单 JavaScript 继承定义的文档方法
- 适合初学者的简单 Javascript 循环查询
- CRM 2011 - 选项集上的简单 JavaScript 确认框
- 时钟的简单JavaScript不起作用
- 为我的简单 JavaScript 函数添加回调功能
- 来自数据库数组的简单 Javascript 幻灯片
- 预加载图像并为我的 CSS 行的简单 Javascript 选项过渡
- 带有url的简单javascript正则表达式
- 带有switch语句的简单javascript