این تابع واسه محاسبه ی تعداد ماه و سال* و روز هستش و بیشتر واسه برنامه هایی استفاده میشه که با حساب و کتاب سر و کار دارند...
کد:
کد:
procedure cal_mounth(start_d: string;end_d:string);
begin
sum_mounth:=0;
day:=0;
mounth:=0;
year:=0;
s1:="";
s2:="";
s3:="";
e1:="";
e2:="";
e3:="";
s1:=copy(start_d,1,4);
if StrToInt(s1)=1 then
s1:="0";
s2:=copy(start_d,6,2);
if StrToInt(s2)=1 then
s2:="0";
s3:=copy(start_d,9,2);
if StrToInt(s3)=1 then
s3:="0";
e1:=copy(end_d,1,4);
if StrToInt(e1)=1 then
e1:="0";
e2:=copy(end_d,6,2);
if StrToInt(e2)=1 then
e2:="0";
e3:=copy(end_d,9,2);
if StrToInt(e3)=1 then
e3:="0";
//ãÍÇÓÈå í ÑæÒ
day:=StrToInt(e3)-StrToInt(s3);
if day <0 then
begin
day:=30+day;
temp:=StrToInt(e2);
temp:=temp-1;
e2:=IntToStr(temp);
temp:=0;
end;
//ãÍÇÓÈå í ãÇå
mounth:=StrToInt(e2)-StrToInt(s2);
if mounth <0 then
begin
mounth:=12+mounth;
temp:=StrToInt(e1);
temp:=temp-1;
e1:=IntToStr(temp);
temp:=0;
end;
//ãÍÇÓÈå í ÓÇá
year:=StrToInt(e1)-StrToInt(s1);
if year<=0 then
year:=0;
if day>15 then
sum_mounth:=sum_mounth+((year*12)+mounth+1)
else
sum_mounth:=sum_mounth+(year*12+mounth);
end;
علاقه مندي ها (Bookmarks)