Java中的求和方程?

mic*_*air 3 java math calculus

求和方程

我想知道如何在java中编写这个求和方程.但是,诀窍是,我需要总和等于金额.

x= Total Loss Streak amount
sb= Starting Bet
m= multiplier
Run Code Online (Sandbox Code Playgroud)

整个等式将等于一个帐户中的当前货币量.总和在加总时可以完成的次数需要小于或等于一个帐户中的货币数量.

Fyi,这是一个在peerbet.org上工作的dicebot,我希望能够向用户显示他可以连续多次松散,而不会浪费他所有的钱.

如果这个问题不好,请不要回答,让我删除它.此外,它认为中间部分是代码,所以我不得不这样或它不会让我发布.

Bat*_*eba 5

将sb重命名为b.这只是几何级数的总和

sum = b*(m <sup> 2 </ sup>  -  m <sup> x + 1 </ sup>)/(1  -  m)

在Java中,您可以编写:

return b * (m * m - Math.pow(m, x + 1)) / (1 - m);
Run Code Online (Sandbox Code Playgroud)

这将比使用循环快得多,尽管您必须检查它m不是1.

如果你想解决x定的总和,S那么公式的重新排列给出以下Java代码:

double x = Math.log(m * m - S * (1 - m) / b) / log(m) - 1;
Run Code Online (Sandbox Code Playgroud)

并截断此结果以获得x下一个整数破坏播放器的位置的整数值.