Написать программу,которая вычисляет дату следующего дня.( Pascal)Ниже рекомендуемый вид...

0 голосов
100 просмотров

Написать программу,которая вычисляет дату следующего дня.( Pascal)
Ниже рекомендуемый вид работы программы.(данные введенные пользователем,выделены жирным шрифтом)

Введите цифрами сегодняшнюю дату(число,месяц,год) 31 12 1998
Последний день месяца!
С наступающим новым годом!
Завтра 1.1.2000


Информатика (15 баллов) | 100 просмотров
0

В смысле завтрашнего дня?

0

Пояснение:Какое завтра число

0

Долго в общем прописывать :)

Дан 1 ответ
0 голосов
Правильный ответ

Паскаль АВС.
Программа вывводит дату следующего дня. Чтоб не утяжелять программу, не стал писать проверку правильности введения даты - то есть пользователь должен вводить только правильные цифры :)

Program Upmixer;
var
  day, month, year:integer;
begin
writeln('Введите дату:');
write('День:'); read (day);
write('Месяц:'); read (month);
write('Год:'); read (year);
day:=day+1;
{если было введено 29 февраля високосного года}
if (((year mod 4)=0) and ((year mod 100)<>0) and (month=2) and (day=30)) then
  begin
    day:=1;
    month:=month+1;
  end;
{если было введено 28 февраля невисокосного года}
if (((year mod 4)<>0) and (month=2) and (day=29)) then
  begin
    day:=1;
    month:=month+1;
  end;
{другие дни}
if ((day=31) and ((month=4) or(month=6) or (month=9) or (month=11))) then
  begin
    day:=1;
    month:=month+1;
  end;
if ((day=32) and ((month=1) or(month=3) or (month=5) or (month=7) or (month=8) or (month=10))) then
begin
    day:=1;
    month:=month+1;
end;
{31 декабря}
if ((day=32) and (month=12)) then
begin
    day:=1;
    month:=1;
    year:=year+1;
end;
writeln('Завтра ', day,' ',month,' ',year);
end.

(52.6k баллов)