В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
р6661
р6661
31.07.2022 21:43 •  Информатика

с задачей на С++ Описать тип TDate — структур с полями целого типа Day (день), Month (месяц) и Year (год). Описать функцию CheckDate(D) целого типа с параметром типа TDate, которая проверяет правильность даты, указанной в параметре D. Если дата D является правильной, то функция возвращает 0; если в дате указан неверный номер месяца, то функция возвращает 1; если в дате указан неверный день для данного месяца, то возвращается 2. Вывести значение функции CheckDate для пяти данных дат.

Показать ответ
Ответ:
ааааннннгггшим
ааааннннгггшим
26.07.2021 14:44

В функции CheckDate() присутствует все необходимые проверки правильности введенной даты.

Код программы:

#include <iostream>

#include <locale>

using namespace std;

struct TDate{

int Day;

int Month;

int Year;

};

int CheckDate(TDate D) {

if (D.Month < 1 || D.Month > 12)

 return 1;

if (D.Month % 2 == 1) {

 if (D.Month < 8) {

  if (D.Day < 1 || D.Day > 31)

   return 2;

 }

 else {

  if (D.Day < 1 || D.Day > 30)

   return 2;

 }

}

else{

 if (D.Month == 2) {

  if (D.Year % 4 == 0) {

   if (D.Day < 1 || D.Day > 29)

    return 2;

  }

  else {

   if (D.Day < 1 || D.Day > 28)

    return 2;

  }

 }

 else {

  if (D.Month >= 8) {

   if (D.Day < 1 || D.Day > 31)

    return 2;

  }

  else {

   if (D.Day < 1 || D.Day > 30)

    return 2;

  }

 }

}

return 0;

}

int main(void) {

TDate a = { 29, 2, 2035 },

 b = { 29, 2, 2036 },

 c = { 25, 12, 2056 },

 d = { 31, 11, 2001 },

 e = { 30, 4, 2004 },

 g = { 2, 13, 2000 };

cout << CheckDate(a) << endl;

cout << CheckDate(b) << endl;

cout << CheckDate(c) << endl;

cout << CheckDate(d) << endl;

cout << CheckDate(e) << endl;

cout << CheckDate(g) << endl;

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота