C# 求平均上下班时间算法

阅读: 评论:0

C# 求平均上下班时间算法

C# 求平均上下班时间算法

今天小Z一兄弟在项目上遇到了一个求平均上下班时间的算法需求,他采用转换成时间戳tickets的算法进行计算,会出现溢出的异常。小Z考虑这个问题,提出取差值计算的算法。理论公式为:

平均上班时间 = (a1 + a2 + ..+ an)/ days

       = ((a1 - A)+(a2 - A)+...+(an - A)) / days+ A

这里A小Z就取当前时间,C#代码如下:

            DateTime time = DateTime.Now;List<DateTime> dtList = new List<DateTime>();dtList.Add(new DateTime(2017, 9, 25, 7, 31, 50));dtList.Add(new DateTime(2017, 9, 25, 8, 30, 20));dtList.Add(new DateTime(2017, 9, 25, 9, 05, 45));dtList.Add(new DateTime(2017, 9, 25, 8, 55, 50));dtList.Add(new DateTime(2017, 9, 25, 9, 27, 50));dtList.Add(new DateTime(2017, 9, 25, 8, 53, 50));dtList.Add(new DateTime(2017, 9, 25, 8, 49, 50));dtList.Add(new DateTime(2017, 9, 25, 7, 59, 50));var balanceMillSeconds = dtList.Sum(ent=>(ent - time).TotalMilliseconds);var count = dtList.Count;var avgDateTime = time.AddMilliseconds(balanceMillSeconds / count);Console.WriteLine(avgDateTime);


验证了一下,应该可以满足需求,这样封装成一个函数投入使用。


本文发布于:2024-01-29 12:17:48,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170650187215229.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:算法   平均   时间
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23