Лаборатарная работа. Принципы объектно-ориентированного представления программных систем.

  • 14 окт. 2010 г.
  • 379 Слова
Лабораторная работа №1
по дисциплине: Проектирование инфоормационных систем
на тему: Принципы объектно-ориентированного представления программных систем. Программирование классов в C++Builder 5.0Задание №1: Создать класс date, имитирующий дату. Класс должен содержать три поля типа int для хранения дня, месяца, года. Поля объектов инициализировать конструктором по умолчанию и конструктором сдвумя параметрами. Класс должен содержать константный метод вывода значений полей в формате dd-mm-yy и перегруженную операцию вычитания (++) объектов типа date. Операция вычитания, примененная кобъектам типа date, возвращает величину промежутка между двумя введенными датами. В программе, демонстрирующей работу данного класса, создать два инициализированный объект и один неинициализированный. Найтиразность между значениями двух инициализированных объектов и присвоить ее неинициализированному объекту.

Листинг программы.
Файл определения и реализайии класса (MyDate.h):
#include
typedef unsignedint UINT;
const UINT DayInMonth[12] = {31,28,31,30,31,30,31,31,30,31,30,31};

class MyDate
{
private:
UINT m_day, m_month, m_year;
public:
MyDate();
MyDate(UINT day, UINT month, UINTyear);
void SetMyDate(UINT day = 1, UINT month = 1, UINT year = 0);
UINT GetMyDateDay();
UINT GetMyDateMonth();
UINT GetMyDateYear();
AnsiString GetMyDateStr() const;
UINT operator - (MyDatex);
};

//******************************************************************************
//
MyDate::MyDate()
{
SetMyDate();
}//******************************************************************************
//
MyDate::MyDate(UINT day, UINT month, UINT year)
{
SetMyDate(day, month, year);
}

//******************************************************************************
//void MyDate::SetMyDate(UINT day, UINT month, UINT year)
{
if (month > 12) month = 12;
if (month < 1) month = 1;
if (((year % 4) == 0) && (month == 2))
if (day > DayInMonth[month] + 1)...
tracking img