Задать вопрос
26 ноября, 15:46

Напишите программу в Паскале)

написать программу которая вычисляет дату следующего дня.

Введите цифрами сегодняшнюю дату (число, месяц, год) 31 12 1998

+1
Ответы (2)
  1. 26 ноября, 16:23
    0
    Program z2;

    var day, month, year:integer;

    begin

    writeln ('Введите число, месяц, год') ;

    readln (day, month, year) ;

    if (year mod 4=0) and (year mod 100 0) or (year mod 100=0) and (year mod 400 = 0) then / / определение висок. года

    begin

    if (month=2) then

    begin

    if (day=29) then

    begin

    day:=1;

    month:=3;

    end

    else

    day:=day+1;

    end

    else if (month=1) or (month=3) or (month=5) or (month=7) or (month=8) or (month=10) then

    begin

    if (day=31) then

    begin

    month:=month+1;

    day:=1;

    end

    else

    day:=day+1;

    end

    else if (month=12) then

    begin

    if (day=31) then

    begin

    year:=year+1;

    month:=1;

    day:=1;

    end

    else

    day:=day+1;

    end

    else

    begin

    if (day=30) then

    begin

    day:=1;

    month:=month+1;

    end

    else

    day:=day+1;

    end;

    end

    else / / проверка обычного года

    begin

    if (month=2) then

    begin

    if (day=28) then

    begin

    day:=1;

    month:=3;

    end

    else

    day:=day+1;

    end

    else if (month=1) or (month=3) or (month=5) or (month=7) or (month=8) or (month=10) then

    begin

    if (day=31) then

    begin

    month:=month+1;

    day:=1;

    end

    else

    day:=day+1;

    end

    else if (month=12) then

    begin

    if (day=31) then

    begin

    year:=year+1;

    month:=1;

    day:=1;

    end

    else

    day:=day+1;

    end

    else

    begin

    if (day=30) then

    begin

    day:=1;

    month:=month+1;

    end

    else

    day:=day+1;

    end;

    end;

    writeln ('Следующий день: ', day, ' ', month, ' ', year) ;

    end.
  2. 26 ноября, 18:52
    0
    Const

    dm:array[1 ... 12] of integer = (31,28,31,30,31,30,31,31,30,31,30,31) ;

    var

    d, m, y, dFeb:integer;

    begin

    Write ('Введите дату в формате день месяц год: ') ;

    Read (d, m, y) ;

    if (m=2) and (d>=28) then begin

    if ((y mod 4=0) and (y mod 100 0)) or

    ((y mod 100=0) and (y mod 400 = 0)) then dFeb:=29

    else dFeb:=29;

    if d=dFeb then begin d:=1; Inc (m) end

    else Inc (d) ;

    if m=13 then begin m:=1; Inc (y) end

    end

    else begin

    Inc (d) ;

    if d>dm[m] then begin d:=1; Inc (m) end;

    if m=13 then begin m:=1; Inc (y) end

    end;

    Writeln ('Следующая дата ', d,' ', m,' ', y)

    end.
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Напишите программу в Паскале) написать программу которая вычисляет дату следующего дня. Введите цифрами сегодняшнюю дату (число, месяц, ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы