Составьте программу, на русском языке (8 класс) ПОЖАЛУЙСТА, СРОЧНО:
Определить правильность даты, введенной с клавиатуры (число — от 1 до 31, месяц —от 1 до 12). Если введены некорректные данные, то сообщить об этом.

Ответы

Ответ дал: fedrfedr
0

var

 Ch, Mes, MaxCh: Integer;

begin

 Write ('Введите число (1-31):');

 ReadLn (Ch);

 if (Ch < 1) or (Ch > 31) then begin

   WriteLn ('Введено некорректное число');

   Exit;

 end;

 Write ('Введите месяц (1-12): ');

 ReadLn (Mes);

 if (Mes < 1) or (Mes > 12) then begin

   WriteLn ('Введен некорректный месяц');

   Exit;

 end;

 case Mes of

 1, 3, 5, 7, 8, 10, 12: MaxCh := 31;

 4, 6, 9, 11: MaxCh := 30;

 2: MaxCh := 28;

 end;

 if Ch <= MaxCh then

   WriteLn ('Дата правильная')

 else

   WriteLn ('Дата неправильная!');

end.

// в программе не учитывается то, что в високосном году февраль имеет 29 дней

Ответ дал: ingr
0
не, пусть автор вопроса сам решает это он хотел либо что то другое :)
Ответ дал: ingr
0
и по условию задачи во всех месяцах вроде 31 день, так что ты перестарался с правильностью проверки :)
Ответ дал: fedrfedr
0
мне кажется это проверка даты на правильность, то есть нужно проверять чтобы не ввели что-то типа 31 февраля...
Ответ дал: ingr
0
в условии прямо сказано: число - 1..31, дата - 1..12
Ответ дал: ingr
0
опечатка: месяц - 1..12
Вас заинтересует