我有一个小问题要解决,通过反复试验,我不能解决它。
我有五个变量:
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我使用它来减少一天中随时间推移的#a# (100),具体取决于#e#。这很简单,目前已经完成了。
现在我需要介绍#b#和#c#;当#b#不变时;#c#会变,可以从0到6,总是从零开始,一天中递增到7(这是随时随机添加的)
这就是我努力的地方,所以更多地解释一下:
目前,当:e= d/2 (一天的一半)时,结果将是:(a - 50)。
进行更改后,如果#c#为零,结果应该是相同的(在我的示例中为50)。但是当#c#不是=>时,结果应该是50+someMagicNumber。为什么?因为#c#更接近达到极限(#b#)
我不擅长数学,而且我正在写这篇文章可能会帮助我理清思路:);如果有人理解我想要做的事情并有任何想法,我会很感激的;也请原谅我的英语。
ps:一旦#c#达到7,整个事情就完成了,而这个计算并没有完成。因此#c#将始终为< #b#
发布于 2014-05-06 21:21:22
看起来您要计算的表达式是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/864。
如果c为0且e为d - 1,则结果为100 - 1/864。这是你一周第一天的最后一秒。对于下一种情况,您应该设置c为1,e为0,而不是设置e == d。你的结果应该再增加1/864,所以结果恰好是100。
所以从c==0,e==0到case c==1,e==0,你的结果增加了100%。每次你给c加1,你的结果就会再次增加100。
https://stackoverflow.com/questions/23495395
复制相似问题