【发布时间】:2018-01-30 17:40:55
【问题描述】:
BREAK
24.1.2018 13.10 - 24.1.2018 13.30
24.1.2018 19.00 - 26.1.2018 15.00
AVAILABILITY
24.1 13.00-14.00 = 66.67%
25.1 13.00-14.00 = 0%;
我看到上面的例子有中断。 我想检查一下这个休息时间覆盖了 2 个给定日期时间的百分比。例如 24.1 和 25.1 的 13.00-14.00...正如眼睛告诉 25) 13-14,可用性为 0...和 24.1 13.00-14.00 其 66.67%。
如何借助库或代码以编程方式计算此百分比?
CalcPercentage(Breakstart、breakend、availability start、availability start) 将返回例如 66,67
【问题讨论】:
-
那么,你的代码在哪里?
-
我不知道从哪里开始,最简单的方法是如果已经有一个库。
-
开始的地方是写出一个公式,就好像你要在纸上做一样。确定您需要哪些输入,并将这些参数设置为方法。然后在该方法中实现您的公式:给定必要的输入,计算并返回结果。如果遇到困难,请回到这里! :)
-
这并不容易。你需要一个算法。
-
请注意,减去另一个 DateTime frim 会返回它们之间的经过时间。
标签: c# datetime overlap timespan