- •Пояснительная записка
- •Минск 2008 введение
- •1. Анализ предметной области
- •2. Определение модели базы данных
- •3. Проектирование интерфейса пользователя
- •4. Написание программного кода
- •4.1. Содержание модуля “unit1.Cpp”
- •4.2. Содержание модуля “film.Cpp”
- •5. Руководство пользователя программы
- •Заключение
- •Список использованной литературы
- •Список источников сети интернет
4.2. Содержание модуля “film.Cpp”
#include <string>
#include <iostream>
class Film
{
private: // private переменные - данные по фильму (не доступны из основного кода программы)
char * name; // имя фильма
char * date; // дата сеанса
char * time; // время сеанса
int room; // номер зала
int cost; // цена билета
bool tickets[16][20]; //массив логических переменных – это “места в зале” (свободные места - true, занятые места – false)
public:
Film(char * newName, char * newDate, char * newTime, int newRoom, int newCost) // конструктор класса
{
name = new char [100]; // выделение области динамической памяти для хранения массива символов
strcpy (name, newName);
date = new char [100];
strcpy (date, newDate);
time = new char [100];
strcpy (time, newTime);
room = newRoom;
cost = newCost;
for (int j=0; j < 16; j++)
for (int i=0; i<20; i++)
tickets[j][i] = true; // инициализация массива мест в кинотеатре
// т.к. не во всех рядах именно по 20 мест, то используются только первые “x” позиций массива, а остальные позиции игнорируются
}
~Film() // деструктор класса
{
delete name; // освободить место в динамической памяти
delete date; // освободить место в динамической памяти
delete time; // освободить место в динамической памяти
}
char * getName() // вернуть значение переменной name
{
return name;
}
char * getDate() // вернуть значение переменной date
{
return date;
}
char * getTime()// вернуть значение переменной time
{
return time;
}
int getRoom() // вернуть значение переменной room
{
return room;
}
int getCost() // вернуть значение переменной cost
{
return cost;
}
bool getTicket(int row, int seat)
{
return tickets[row][seat]; // вернуть позицию массива tickets
}
void setName(char * newName) // установить значение “newName” переменной “name”
{
strcpy (name, newName);
}
void setDate(char * newDate)
{
strcpy (date, newDate);
}
void setTime(char * newTime)
{
strcpy (time, newTime);
}
void setRoom (int room_id)
{
room = room_id;
}
void setCost (int newCost)
{
cost = newCost;
}
void setTicket (int row, int seat)
{
tickets[row][seat] = ! tickets[row][seat]; // изменить значение элемента массива tickets на противоположное
}
void printFilm () // вывести информацию по фильму
{
std::cout << "Title: " << name << " "; // вывод надписи на экран
std::cout << "Date: " << date << " "; // вывод надписи на экран
std::cout << "Time: " << time << " "; // вывод надписи на экран
std::cout << "Room: " << room << " "; // вывод надписи на экран
std::cout << "Price: " << cost << "\n"; // вывод надписи на экран
}
};