我必须构建一个像
这样的序列(amount-(amount/36*1)) +
(amount-(amount/36*1 + amount-amount/36*2)) +
(amount-(amount/36*1 + (amount-amount/36*2) + (amount-amount/36*3))) +
(amount-(amount/36*1 + (amount-amount/36*2) + (amount-amount/36*3) + (amount-amount/36*4))) +
...
(amount-(amount/36*1 + (amount-amount/36*2) + (amount-amount/36*3) + (amount-amount/36*4) + ... + (amount-amount/36*n)))
其中 n
是一个值,我将根据事件发生后经过的日历月数单独计算。
该公式应以上述方式继续下去,直到满足 n
的值。
我想不出如何迭代以便构建公式
最佳答案
如果我正确理解了公式,这应该可以calc(amount, 0, 1, n)
:
public double calc(double amount, double sum, int curr, int n) {
if (curr > n) return 0;
sum += (amount - amount / 36 * curr);
return sum + calc(amount, sum, curr + 1, n);
}
关于java - 数学公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56067934/