Автор работы: Пользователь скрыл имя, 20 Января 2013 в 17:40, курсовая работа
Рост благосостояния в экономически развитых странах, увеличение свободного времени и потребности общества, связанные с цивилизацией досуга, обусловили весьма благоприятную ситуацию, сложившуюся на мировом рынке кинотеатральных услуг. Подтверждением этого факта служат многотысячные аудитории на концертах мировых знаменитостей, заполненность театров и очереди в кинотеатры в Европе и Америке.
Организация работы кинотеатра строится из множества составляющих. Одной из важнейших составляющих является – программное обеспечение, для организации работы электронной справочной службы.
Введение ............................................................................................................... 4
Постановка задачи ............................................................................................... 5
Программная реализация решения задачи ........................................................ 6
Руководство пользователя .................................................................................. 8
Руководство программиста ............................................................................... 11
Заключение ......................................................................................................... 13
Список использованных источников и литературы ....................................... 14
Приложение А .................................................................................................... 15
Приложение А
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_Y 10
#define MAX_X 5
#define TOTAL (MAX_X * MAX_Y * 7)
struct tickets { //структура описывающая билеты
char name[50]; //ФИО
int is_fill; //Флаг, если билет забронирован
};
struct seanses { //Сеансы
char name[50]; //название
char date[10]; //дата показа
};
int show_menu(); //показать главное меню
void show_seanses(); //вывести сеаны
void show_plan(struct tickets *ticket, struct seanses *seans, int seans_id); //показать план кинотеатра
void fill_ticket(struct tickets *ticket, struct seanses *seans); //забронитовать билет
void fill_seans(struct seanses *seans); //заполнить сеансы
int main() {
int i;
int k;
int ans;
struct tickets ticket[TOTAL];
struct seanses seans[7];
printf("%d\n",TOTAL);
/*Обнуляем массив структур сеансов и билетов*/
for(i = 0; i < TOTAL; i++) {
memset(ticket[i].name, 0, 50);
ticket[i].is_fill = 0;
}
for(i = 0; i < 7; i++) {
memset(seans[i].name, 0, 50);
memset(seans[i].date, 0, 50);
}
ans = -1;
/*Выводим меню*/
while( ans != 6){
ans = show_menu();
if(ans == 5) {
show_seanses(&seans[0]);
}
if(ans == 4 || ans == 2) {
int s_id;
printf("Введите номер сеанса: ");
scanf("%d", &s_id);
show_plan(&ticket[0], &seans[0], s_id);
}
if(ans == 2) {
fill_ticket(&ticket[0], &seans[0]);
}
if(ans == 1) {
fill_seans(seans);
}
}
return 0;
}
void show_plan(struct tickets *ticket, struct seanses *seans, int seans_id) {
int i;
int j;
int k;
printf("Сеанс: %s; Дата: %s\n", seans->name, seans->date);
j = 0;
i = (seans_id - 1) * MAX_X * MAX_Y;
k = i + MAX_X * MAX_Y;
for(; i < k; i++) {
if(ticket[i].is_fill == 0)
printf("E");
else
printf("F");
if(j == (MAX_X - 1)) {
printf("\n");
j = 0;
}
else {
j++;
}
}
}
int show_menu() {
int ans;
printf("Menu:\n");
printf("1. Заполнить сеансы.\n");
printf("2. Заполнить билет.\n");
printf("3. Редактировать билет.\n");
printf("4. Показать план кинотеатра.\n");
printf("5. Показать сеансы.\n");
printf("6. Выход. \n");
printf("Сделайте ваш выбор: ");
scanf("%d", &ans);
printf("\n\n");
return ans;
}
void show_seanses(struct seanses *seans) {
int i;
for(i = 0; i < 7; i++) {
printf("%d. %s - %s\n", i + 1, seans[i].date, seans[i].name);
}
}
void fill_ticket(struct tickets *ticket, struct seanses * seans) {
int seans_id;
int x;
int y;
int ind;
char name[50];
memset(name, 0, 50);
printf("\n");
show_seanses(seans);
printf("Выберите номер сеанса: ");
scanf("%d", &seans_id);
show_plan(ticket, seans, seans_id);
printf("Введите координату места по оси Х(ось начинается сверху): ");
scanf("%d", &x);
printf("Введите координату места по оси У(ось начинается сверху): ");
scanf("%d", &y);
printf("Введите ваше ФИО: ");
scanf("%s",name);
ind = ((seans_id - 1) * MAX_X *MAX_Y) + (((y - 1)*MAX_X) + x) - 1;
strcpy(ticket[ind].name, name);
ticket[ind].is_fill = 1;
}
void fill_seans(struct seanses *seans)
{
int i;
printf("Заполните информацию о сеансах:\n");
for(i = 0; i < 7; i++) {
printf("%d. \tНазвание сеанса: ", i + 1);
scanf("%s", &seans[i].name);
printf("\n \tДата показа: ");
scanf("%s", &seans[i].date);
}
}
Информация о работе Разработка электронной справочной службы кинотеатра