关于日期计算的问题,求教
各位大侠:
我有一个计算日期的难题:例如:2006年3月1日至2007年9月1日,间隔1年6个月,用程序怎么算,(注:经本人实验:yearsbetween()和monthsbetween()仅能算整年和整月,而且不准),而且要求格式如:1年6个月 (不能用18个月表示)
难煞俺了!!!!!!!
求助!!!!!!!!!!!!!!!!!!
[解决办法]
12进制的,18/12取整不就是年么,余数就是月
[解决办法]
m1,y1,m2:integer;
begin
m1:=monthsbetween(date1,date2);
m2:=m1 mod 12;
y1:=m1 div 12;
ShowMessage(Inttostr(y1)+ '年 '+IntToStr(m2)+ '个月 ');
end;
[解决办法]
ps:如果感觉不精确可以用DecodeDatetime分解日期后计算
[解决办法]
uses Math;
var
res,modv:Word;
DivMod(newprice,self.FCurrStepPrice,res,modv);
//参数1是被除数,2是除数,res是积的整数部分,modv为余数