Предмет: Информатика, автор: Victoria639

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


ingr: таки не понятно на каком языке нужна программа? На РУССКОМ или все же на каком то из языков программирования?

Ответы

Автор ответа: 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: просили же на РУССКОМ, а ты сделал на ПАСКАЛЕ :)))
fedrfedr: ну извини, на русском я только ругаться умею. удалить текст ответа? может кто-то напишет, что нужно?
ingr: не, пусть автор вопроса сам решает это он хотел либо что то другое :)
ingr: и по условию задачи во всех месяцах вроде 31 день, так что ты перестарался с правильностью проверки :)
fedrfedr: мне кажется это проверка даты на правильность, то есть нужно проверять чтобы не ввели что-то типа 31 февраля...
ingr: в условии прямо сказано: число - 1..31, дата - 1..12
ingr: опечатка: месяц - 1..12
Похожие вопросы