Case8. Даны два целых числа: $$D$$ (день) и $$M$$ (месяц), определяющие правильную дату невисокосного года. Вывести значения $$D$$ и $$M$$ для даты, предшествующей указанной.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
program Case8; var D,M:Integer; begin Write('Введите день: '); Readln(D); Write('Введите номер месяца: '); Readln(M); D:=D-1; if D=0 then begin M:=M-1; if M=0 then M:=12; Case M of 1,3,5,7,8,10,12 : D:=31; 4,6,9,11 : D:=30; 2 : D:=28; end; end; Writeln ('Предыдущая дата: ',D,'.',M); end. |
Другие задачи из раздела Case можно посмотреть здесь.
Еще бы понять как это на C++ скомпилировать)))
Я думаю как то так должно выглядеть: Case8 на С++ компилятор VS2008
‘Введите день’ — не понятно что вводить то ли название дня, то ли номер между 1 и 365, то ли число дня какого-то месяца. Лучше так — ‘введите число дня месяца’.
Вывод однозначных чисел дня и месяца не красив. Вместо, например, 1.1 хотелось бы 01.01