我正在尝试创建一个在 JavaScript 中执行 Sigma 符号计算的函数。 (如果你不知道 Sigma 表示法,那么我在下面尝试做的事情就会很清楚。)我的目标是制作一个可以像 Sigma 表示法一样容易编写的函数,并返回 Sigma 表示法计算的解决方案.理想情况下,我希望调用该函数时只需提供起始值、结束值以及要对数字集中的每个数字执行的计算,然后再将它们作为参数求和。
例如,
thisIsMySigmaNotationFunction(1, 4, 2i+1)
会返回:
(2(1)+1) + (2(2)+1) + (2(3)+1) + (2(4)+1) = 24
这是我到目前为止创建的代码,它可以工作,但我必须创建一个单独的函数来用作 2i+1 参数。我想知道是否有办法避免这种情况并像上面那样调用函数,因为 2i+1 将来可能需要更改为 i/(i+1) 或其他计算并且不必创建会很棒每次作为参数插入的单独函数。
function sigmaCalculation(start, end, whatToSum){
var sum = 0;
for (var i = start; i <= end; i++){
sum += whatToSum(i);
};
console.log(sum);
}
function calculationToSum(this1){
return 2*this1+1;
}
最佳答案
如果有帮助的话,你不需要在每次调用时都创建命名函数,你可以使用匿名函数:
sigmaCalculation(1, 4, function(x) { return 2 * x + 1; });
这可以非常紧凑。
现在如果你想执行 i/(i+1)
,你只需将调用更改为:
sigmaCalculation(1, 4, function(x) { return x / (x + 1); });
关于javascript - 如何在 JavaScript 中创建执行 Sigma 符号计算的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22079340/