Pascal
Modified: Wednesday, 22-12-2021 07:00 AM
Xem ngày hôm trước và hôm sau của ngày nhập vào
Code tự tạo
var dt,mt,dd,mm:byte; //Ngay temp, thang temp, ngay, thang
y,yt:integer; //Nam, nam temp
function maxd(m:byte;y:integer):byte;
begin
case m of
1,3,5,7,8,10,12:maxd:=31;
4,6,9,11:maxd:=30;
2:
begin
if (y mod 4=0) and (y mod 100 <>0) then
maxd:=29
else
maxd:=28;
end;
end;
end;
begin
readln(dd);
readln(mm);
readln(y);
if (dd>=1) and (dd<=maxd(mm,y)) and (mm>=1) and (mm<=12) then
begin
writeln('Ngay ban nhap: ',dd,'/',mm,'/',y);
//Ngay hom truoc
if dd=1 then
begin
if mm=1 then
begin
mt:=12;
yt:=y-1;
end
else
begin
mt:=mm-1;
yt:=y;
end;
dt:=maxd(mt,yt);
end
else
begin
dt:=dd-1;
mt:=mm;
yt:=y;
end;
writeln('Ngay hom truoc la: ',dt,'/',mt,'/',yt);
//Ngay hom sau
if dd=maxd(mm,y) then
begin
dt:=1;
if mm=12 then
begin
mt:=1;
yt:=y+1;
end
else
begin
mt:=mm+1;
yt:=y;
end
end
else
begin
dt:=dd+1;
mt:=mm;
yt:=y;
end;
writeln('Ngay hom sau la: ',dt,'/',mt,'/',yt);
end
else writeln('Ngay ban nhap chua chinh xac !');
readln;
end.
Code dùng thư viện
uses sysutils;
var yy,mm,dd : word;
day,dayPre,dayNext:TDateTime;
begin
readln(dd,mm,yy);
day:=EncodeDate(yy,mm,dd);
dayPre:=day-1;
dayNext:=day+1;
DecodeDate (dayPre,yy,mm,dd);
writeln (format ('Date Prev is (dd/mm/yy): %d/%d/%d ',[dd,mm,yy]));
DecodeDate (dayNext,yy,mm,dd);
writeln (format ('Date Next is (dd/mm/yy): %d/%d/%d ',[dd,mm,yy]));
readln;
end.