关于计算时间函数的有关问题

关于计算时间函数的问题!
我想实现一个类似酒店的 时间算法 ! 规则是 过了中午12点算半天,过了下午18点算一天, edit1是2011/12/22 16:40 edit2 是获取当前时间比如是 2011/12/25 15:00 请问 怎么求出 中间过了多少天 , 半天 按0.5算!

------解决方案--------------------
TDateTime的值就是天数,将两个Edit分别转为TDateTime
var
days:double;
....
 days=StrToDate(Edit2.Text)-StrToDate(Edit1.Text);
这个就是天数,然后按你的要求.小数部分>0.5(12/24) days的小数就取0.5, >0.75(18/24) days+1
就可以了

------解决方案--------------------

同意一楼的观点,帮你补充完整代码吧:

const
HalfDay = 12
OneDay = 18
var
days: double;
begin
days := StrToDate(EditNow.Text) - StrToDate(EditSomeDay.Text);
if days >= (HalfDay/24) then 
MessageBox(0, '超过半天', '提醒', MB_OK)
else if days >= (OneDay/24) then
MessageBox(0, '超过一天', '提醒', MB_OK)
else
MessageBox(0, '不到半天', '提醒', MB_OK)
end;