然后我们就可以,按照9月1号第1组,9月2号第2组,9月3号第3组,9月4号第4组,9月5号第1组......依次类推就可以了
当然用程序的话可以这样:
例如我们输入了起始日期是9月1号,结束日期是9月21号,并且在窗口中有一个memo控件,那么
anow:=strtodate('2007-9-1');
athen:=strtodate('2007-9-21');
for i:=0 to DaysBetween(anow,athen) do
begin
str:=datetostr(anow+1)+':'+#10#13;
case i mod 4 of
0:str:=str+' 早班:张三'+#10#13+'中班:李四'+#10#13+'晚班:张三';
1:str:=str+'早班:李四'+#10#13+'中班:赵五'+#10#13+' 晚班:李四 ';
2:str:=str+'早班:赵五'+#10#13+'中班:王六'+#10#13+'晚班:赵五';
3:str:=str+'早班:王六'+#10#13+'中班:张三'+#10#13+'晚班:王六 ';
end;
memo1.lines.add(str);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
str:string;
begin
memo1.Clear;
madegroup('张三','李四','赵五','王六');
for i:=0 to DaysBetween(self.DateTimePicker1.Date,self.DateTimePicker2.Date) do
begin
str:=datetostr(self.DateTimePicker1.Date+i)+ ': '+#10#13;
case i mod 4 of
0:str:=str+ group1;
1:str:=str+ group2;
2:str:=str+ group3;
3:str:=str+ group4;
end;
memo1.lines.add(str);
end;