正在寻找替换循环的公式
Searching for a formula to replace loop
是否有一个简单的公式来计算这个?
var quantity = 10
var starting_price = 10
var cost = 0
var price = starting_price
for (var n=1; n<=quantity; n++) {
cost += price
price += price * 0.01
}
console.log('final price: '+price)
console.log('total cost: '+cost)
1值10,2值20.1,3值30.3,4值40.6,5值51。有没有一个简单的公式可以代替循环来计算这个?
这样的问题可以随时问Wolfram Alpha:
价格(n) :
问题:f (0) = 10, f (n) = f (n - 1) + f (n - 1) * 0.01
答案f(n) = 10^(1-2n) 101^n
成本(n) :
问题:g (n) = 10 ^ 101 ^ n (1-2n), f (0) = 0, f (n) = f (n - 1) + g (n - 1)
答案:f(n) = 10^(3-2n) 101^n - 1000
翻译成JavaScript:
function price(n) {
return Math.pow(10, 1 - 2*n) * Math.pow(101, n);
}
function cost(n) {
return Math.pow(10, 3 - 2*n) * Math.pow(101, n) - 1000;
}
这样一个公式的名字是递归方程,你学过它,例如在你的第一学期作为CS本科。这很容易"手动"完成。在解决了几个例子之后。
OP更改后:
价格(n) :
问题:f (0) = c、f (n) = f (n - 1) + f (n - 1) * d
答:f (n) = c * (d + 1) ^ n c = 10, d = 0.01
成本(n) :
问题:g (n) = c (d + 1) ^ n、f (0) = 0, f (n) = f (n - 1) + g (n - 1)
答案f(n) = c/d ((d+1)^n - 1)
查看两个结果是否相同:
问题:c/d (d + 1) ^ (n - 1) = 10 ^ (3-2n) 101 ^ n - 1000 c = 10 d = 0.01
答:真正的
相关文章:
- 使用javascript的图像替换循环
- '对于'循环,替换span标记的问题
- Javascript嵌套循环匹配、组合、替换
- 按数据属性循环元素并替换值
- 将数组值替换为循环以创建新数组
- 循环并用parseJSON数据替换CSS
- javascript替换url链接循环
- 将下划线或lodash_.分别替换为香草色作为循环
- 用循环中的数组内容替换html中的字符串
- 用循环替换简单的Javascript
- 如何使用jquery在循环中查找和替换
- 如何在 p5.js 中将 For 循环的文本输出替换为不同的值
- 如何缓慢地遍历 jquery 循环,并每次替换占位符文本
- 在循环数组 javascript 后替换对象属性值中的字符串
- 替换文件循环中的多个值
- 替换从外部 IN for 循环加载的 HTML 字符串中的字符
- 循环替换段落中的副本不起作用
- JavaScript 对象循环替换信息
- 使用foreach循环替换数组中的现有对象
- 在String.prototype中使用indexOf和while循环替换所有