- •Дагестанский государственный технический университет
- •Пояснительная записка к курсовой работе по дисциплине: «Программирование»
- •Лист задания
- •Аннотация
- •Содержание
- •Введение
- •Анализ задачи
- •Программирование задачи
- •Функция void main()
- •Функция int menu(int n)
- •Тестирование программы
- •Заключение
- •Приложение
Функция int menu(int n)
gotoxy(3,y); //прописываются на экран пункты меню
window(27,y+10,50,y+10);
textattr(16*15+4);
clrscr();
cout<<dano[0];
do
{
c=getch();
k=y;
window(27,k+10,50,k+10);
textattr(16*15+2);
clrscr();
cout<<dano[k-1];
switch(c)
{
case 'w':y--;break; ; // переход по пунктам меню
case 's':y++;break;
case 13:return y;
case 27:exit(0);
}
if(y>n) y=1; //с помощью данных условных операторов
if(y<1) y=n; // осуществляется переход от последнего к первому
}while(c!=27); // и наоборот
Функция void sv_uk()
int i,j,n;
cout<<"Vvedite chislo\nn=";
cin>>n; // вводится требуемое число
for(i=0;i<25;i++)
for(j=0;j<6;j++)
if (a[n][i][j]==0) // проводим проверку свободно ли место
cout<<i+1<<"-"<<j+1<<"|"; // вывод на экран свободных мест
Функция void pr_uk()
int i,j,n;
cout<<"Vvedite chislo\nn=";
cin>>n; // вводится требуемое число
for(i=0;i<25;i++)
for(j=0;j<6;j++)
if (a[n][i][j]==1) // проводим проверку продано ли место
cout<<i+1<<" - "<<j+1<<"|"; // вывод на экран проданных мест
Функция void br_uk()
cout<<"Vvedite chislo\nn=";
cin>>n; // вводится требуемое число
for(i=0;i<25;i++)
for(j=0;j<6;j++)
if (a[n][i][j]==2) // проводим проверку забронировано ли место
cout<<i+1<<" - "<<j+1<<"|"; // вывод на экран забронированных мест
Функция void pr_dc()
cout<<"Prodannie mesta na dekadu(ryad-mesto)\n";
for(n=0;n<10;n++){
cout<<"\n"<<n+1<<" den:";
for(i=0;i<25;i++)
for(j=0;j<6;j++)
if (a[n][i][j]==1) // проводим проверку продано ли место на декаду
cout<<i+1<<" - "<<j+1<<"|";} // вывод на экран проданых мест на декаду
Функция void br_dc()
cout<<"Zabronirovanie mesta na dekadu(ryad-mesto)\n";
for(n=0;n<10;n++){
cout<<"\n"<<n+1<<" den:";
for(i=0;i<25;i++)
for(j=0;j<6;j++)
if (a[n][i][j]==2) // проводим проверку забронировано ли место на декаду
cout<<i+1<<" - "<<j+1<<"|"; } // вывод на экран забронированных мест на декаду
Функция void sinkh()
ifstream f; // файловая переменная
f.open("DAY01.txt", ios::in); //открываем файл для чтения
for(i=0;i<25;i++)
for(j=0;j<6;j++)
f>>a[0][i][j]; //записываем данные из файла в массив
f.close(); //закрываем файл
…………
………………..
«Полный текст программы приведен в приложении»
Тестирование программы
При запуске программы появляется меню из 5 пунктов, выбираем первый пункт (рис. 1).
Рис.1 Главное меню (выбор 1-го пункта)
После выбора первого пункта откроется окно где требуется ввести число на которое мы хотим получить информацию, введём число 2 (рис.2)
Рис.2 Ввод числа для проверки на свободные места
После чего мы получим информацию о свободных местах на второе число, двоеточие разделяет между собой ячейки с информацией на свободные места, где первым значением в ней является ряд, а вторым значением выступает место которое на данный момент является свободным. (рис. 3)
Рис.3 Свободные места на 2 день (ряд-место)
Теперь будем искать проданные места на указанное число (рис. 4)
Рис.4 Главное меню (выбор 2-го пункта)
Вводим
число 4 (рис.5)
Рис.5 Ввод числа для проверки на проданные места
После чего мы получим информацию о проданных местах на четвёртое число. (рис .6)
Рис.6 Проданные места на 4 день (ряд-место)
Аналогичным способом можно получить информацию о бронированных местах на указанное число (рис.7)
Рис.7 Главное меню (выбор 3-го пункта)
Вводим число 5 (рис.8)
Рис.8 Ввод числа для проверки на забронированные места
После чего мы получим информацию о забронированных местах на пятое число, двоеточие разделяет между собой ячейки с информацией на свободные места, где первым значением в ней является ряд, а вторым значением выступает место которое на данный момент является забронированным (рис .9)
Рис. 9 Забронированные места на 5 день (ряд-место)
Как видно из предыдущих примеров, получать информацию с другими критериями можно аналогичным способом.
Просмотрим информацию о проданных местах на декаду, выберем 4 пункт (рис.10)
Рис.10 Главное меню (выбор 4-го пункта)
После выбора 4-го пункта мы получим информацию о проданных местах на декаду. (рис .11)
Рис.11 Проданные места на декаду с 1 по 10 число (ряд-место)
А сейчас просмотрим информацию о забронированных местах на декаду, выберем 5 пункт (рис.12)
Рис.12 Главное меню (выбор 5-го пункта)
После выбора 5 пункта мы получаем информацию о всех забронированных местах на декаду с 1 по 10 число (рис.13)
Рис.13 Вывод всех забронированных мест на декаду с 1 по 10 число
Давайте посмотрим как выглядит одна из баз данных (DAY01) (рис.14)
Рис.14 База данных (DAY01)
Как видно на рисунке (рис.13) база состоит из набора чисел, причем структура их такова: 25 строк, 6 столбцов, а самих файлов 10.
