版友yanwei82123300连发两贴求问关于工厂日历的问题。大意是工厂的财政年度为每年的10月1日开始到次年的9月30日,从所发的表格和图示来看,每月的结账日大约在月末的某个周五。版友yanwei82123300同志几番解释均不得要领,于是便引起了若干好事者(包括鄙人)进行哥德巴赫猜想。几经分析,在下以为这样的设计相对合理:会计的结账日期一般应在20前后,且低于20日的日数应该相对操过20日的日数要少很多,也就是说最早的结账日不应该低于18日。按照这个思路帮助版友yanwei82123300写了一个函数。为了进一步拓展版友yanwei82123300的思维,又按照倒数第二个周五为月末结账日写了一个函数。其实也不知道是否真的符合该同志的需要。
由这个问题可以看出,在程序的设计和开发过程中,需要对既有的管理习惯进行一个规范,使之具有规律,并且可以用程序体现出这个规律来。这个问题估计是开发中最难的事情,改变人的习惯很不容易。
点击下载此附件
又仔细看了一下图示,发现其规律为季度内的月度周数是按照445分配的(1月和12月除外):
据此编写如下示例:
点击下载此附件