Pascal. Ввести с клавиатуры дату и определить какое число будет завтра и было вчера.

2

Ответы и объяснения

2013-02-28T15:36:29+04:00
Нажать на pause brake потом на своё время на компе потом нажать insert и ввести clock sound
2013-02-28T17:15:07+04:00

Извини, что слишком большой код, но зато показывает любую дату. Со всеми нюансами. Даже если в июле и августе по 31 дню, а в феврале 28)

 

 

var a,b,c:integer;
d:string;

begin
write ('Введите сегодняшнее число '); readln (a);
write ('Введите номер месяца '); readln(d);
if (d='5') or (d='05') or (d='7') or (d='07') or (d='10') or (d='12') then
begin
if a<31 then
begin
b:=a-1;
c:=a+1;
if a<2 then
begin
writeln ('Вчера было ',30,' число');
writeln ('Завтра будет ',c,' число');
end
else begin
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',c,' число');
end;
end
else begin
b:=a-1;
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',1,' число');
end;
end;
if (d='4') or (d='04') or (d='6') or (d='06') or (d='9') or (d='09') or (d='11') then
begin
if a<30 then
begin
b:=a-1;
c:=a+1;
if a<2 then
begin
writeln ('Вчера было ',31,' число');
writeln ('Завтра будет ',c,' число');
end
else begin
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',c,' число');
end;
end
else begin
b:=a-1;
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',1,' число');
end;
end;
if (d='2') or (d='2') then
begin
if a<28 then
begin
b:=a-1;
c:=a+1;
if a<2 then
begin
writeln ('Вчера было ',31,' число');
writeln ('Завтра будет ',c,' число');
end
else begin
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',c,' число');
end;
end
else begin
b:=a-1;
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',1,' число');
end;
end;
if (d='3') or (d='03') then
begin
if a<31 then
begin
b:=a-1;
c:=a+1;
if a<2 then
begin
writeln ('Вчера было ',28,' число');
writeln ('Завтра будет ',c,' число');
end
else begin
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',c,' число');
end;
end
else begin
b:=a-1;
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',1,' число');
end;
end;
if (d='1') or (d='01') then
begin
if a<31 then
begin
b:=a-1;
c:=a+1;
if a<2 then
begin
writeln ('Вчера было ',31,' число');
writeln ('Завтра будет ',c,' число');
end
else begin
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',c,' число');
end;
end
else begin
b:=a-1;
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',1,' число');
end;
end;
if (d='8') or (d='08') then
begin
if a<31 then
begin
b:=a-1;
c:=a+1;
if a<2 then
begin
writeln ('Вчера было ',31,' число');
writeln ('Завтра будет ',c,' число');
end
else begin
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',c,' число');
end;
end
else begin
b:=a-1;
writeln ('Вчера было ',b,' число');
writeln ('Завтра будет ',1,' число');
end;
end;
end.