Algorithm 计算白天加班的赔率

Algorithm 计算白天加班的赔率,algorithm,math,Algorithm,Math,我有一个小问题要解决,通过反复试验,我无法解决它 我有五个变量: a = 100 b = 7 c = 0 d = 24 * 60 * 60 // total seconds in one day e = NN // seconds in the day so far, it's variable 我用它来减少一天中的100,这取决于e。这很容易,而且目前已经完成了 现在我需要介绍b和c;当b永不改变;c是,并且可以是0到6,总是从0开始,一天内增加到7。这是任何时候的随机加法 这里是我挣扎的地

我有一个小问题要解决,通过反复试验,我无法解决它

我有五个变量:

a = 100
b = 7
c = 0
d = 24 * 60 * 60 // total seconds in one day
e = NN // seconds in the day so far, it's variable
我用它来减少一天中的100,这取决于e。这很容易,而且目前已经完成了

现在我需要介绍b和c;当b永不改变;c是,并且可以是0到6,总是从0开始,一天内增加到7。这是任何时候的随机加法

这里是我挣扎的地方,所以我要多解释一下自己:

目前,当:e=d/2时,一天中的一半结果将是:a-50

有了这些变化,如果c为零,那么在我的示例中,结果应该是相同的50。 但是当c不是零时,结果应该是50+someMagicNumber。为什么?因为c接近极限b

我的数学不是很好,而且我写这篇文章可能会帮助我理清思路:;如果有人知道我在做什么,有什么想法,我会很感激;也请原谅我的英语


附言:一旦c达到7,整个过程就完成了,而这个计算没有完成。所以c总是您试图计算的表达式似乎是a*c+e/d。你说a和d是常数,不能改变,c和e是变量。顺便说一下,d是86400,24*60*60的值

我们首先考虑C是零的情况。如果c为0,e为0,则结果为0。如果c为0,e为1,则结果为100/d,即1/864。如果c为0,e为2,则结果为2/864,依此类推。每次我们把e增加1,结果就会增加1/864

如果c为0,e为d-1,则结果为100-1/864。这是你一周第一天的最后一秒。对于下一种情况,您应该说c是1,e是0,而不是设置e==d。你的结果应该再增加1/864,所以结果正好是100


从c==0,e==0到c==1,e==0,结果增加了100。每次你在c中加1,你的结果会再次增加100。

也许你会更幸运?c接近极限意味着什么?我应该在那里重新发布一个新问题吗?从未使用过it@Kevin我的意思是它有一些值不是零:比如3。这个描述有点混乱。也许试着把它写成伪代码,然后继续写下去?谢谢David的推理/解释。现在试着去理解它并尝试一下。