Определить дату предыдущего дня и дату следующего дня - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Условие 1: Дата некоторого дня определяется двумя натуральными числами m(порядковый номер месяца) и n(число).По заданным m и n определить: дату предыдущего дня и дату следующего дня.

Решение задачи: «Определить дату предыдущего дня и дату следующего дня»

textual
Листинг программы
var n,m: integer;
//n - день; m - месяц;
begin
   readln(n);
   readln(m);
   case n of
     28: case m of
           2: begin
             n:=1;
             m:=3;
           end;
           else n:=29;
         end;
     30: case m of
           4,6,9,11: begin
             n:=1;
             m:=m+1;
           end;
           else n:=31;
         end;
     31: begin
           n:=1;
           case m of
             12: m:=1;
             else m:=m+1;
           end;
     end;
     else n:=n+1;
   end;
  writeln(n,' ',m);
 readln;
end.

Объяснение кода листинга программы

  1. В начале кода объявлены две переменные типа integer: n и m. Они будут использоваться для хранения дня и месяца соответственно.
  2. Затем происходит чтение значений n и m с помощью функции readln.
  3. Далее идет блок case, который проверяет значение переменной n. Если n равно 28, то выполняется блок case для переменной m. Если значение m равно 2 или 5, то переменным n и m присваиваются значения 1 и 3 соответственно. В противном случае, если n равно 29, то переменным n и m присваиваются значения 1 и 4 соответственно.
  4. Если значение n равно 30, то выполняется блок case для переменной m. Если значение m равно 4, 6, 9 или 11, то переменным n и m присваиваются значения 1 и (m+1) соответственно. В противном случае, если n равно 31, то переменным n и m присваиваются значения 1 и (m+1) соответственно.
  5. Если значение n равно 31, то выполняется еще один блок case для переменной m. Если значение m равно 12, то переменной m присваивается значение 1, а переменной n - значение 13. В противном случае, переменным n и m присваиваются значения 1 и (m+1) соответственно.
  6. Если значение n больше или равно 32, то переменной n присваивается значение n+1.
  7. Наконец, с помощью функции writeln выводится значение переменной n и переменной m.
  8. Конец программы.

Оцени полезность:

8   голосов , оценка 3.5 из 5
Похожие ответы