Определить, сколько дней осталось от заданного дня до нового года. Проверить программу - PascalABC.NET
Формулировка задачи:
Всем здарова! Нужно было написать программу, которая вводит с клавиатуры номер месяца и день, и определяет, сколько дней осталось до Нового года. При вводе неверных данных нужно вывести число -1. Считается, что год невисокосный. Ссылка на задание (Ссылка удалена)
Мне пишет "Частичное решение", 25 баллов, то есть 5 тестов я не прошел. Заранее спасибо!)))
Решение задачи: «Определить, сколько дней осталось от заданного дня до нового года. Проверить программу»
textual
Листинг программы
CONST Max_Day: Array [1..12] of Integer = (31,28,31,30,31,30,31,31,30,31,30,31); VAR Day, Month: LongINt; Kol_Day: LongINt; BEGIN Read(Month, Day); // Проверяем данные if (Month * Day < 1) then begin Write(-1); Exit; End; If (Month > 12)or(Day > Max_Day[Month]) then begin Write(-1); Exit; End; // Считаем дни Kol_Day := 0; While (Month <> 12)or(Day <> 31) do begin Inc(Kol_Day); if (Day < Max_Day[Month]) then Inc(Day) Else begin Inc(Month); Day := 1; end; End; Write(Kol_Day); END.
Объяснение кода листинга программы
- Объявлены константы и переменные:
- Max_Day: массив из 12 целых чисел, представляющих количество дней в каждом месяце (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
- Day, Month: переменные типа LongInt для чтения номера месяца и дня месяца;
- Kol_Day: переменная типа LongInt для подсчета количества дней.
- Пользователю предлагается ввести номер месяца и дня месяца.
- Происходит проверка введенных данных:
- Если месяц * день < 1, выводится -1 и выполняется выход из программы.
- Если месяц > 12 или день > Max_Day[месяц], выводится -1 и выполняется выход из программы.
- Инициализируется переменная Kol_Day со значением 0.
- Запускается цикл, который выполняется до тех пор, пока месяц не станет равным 12 или день не станет равным 31:
- Увеличивается значение переменной Kol_Day.
- Если день меньше Max_Day[месяц], увеличивается значение переменной Day.
- Если день равно Max_Day[месяц], увеличивается значение переменной Month на 1, а значение переменной Day устанавливается равным 1.
- После завершения цикла выводится значение переменной Kol_Day.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д