3.2 Результати, отримані користувачем при використанні отриманого програмного забезпечення

На малюнку 3.1 зображено початковий стан поля відеотеки, тобто головне меню, за допомогою якого можна рухатися далі, поступово виконуючи потрібні нам операції.


Малюнок 3.1 Головне меню

Натискаємо 1 для перегляду відеотеки.

Малюнок 3.2 Зміст відеотеки

Натискаємо клавішу Ентер і перед нами з’являється меню, розташоване під переліком фільмів відеотеки.

Малюнок 3.3 Зміст відеотеки з меню

Натискаємо 1 для перегляду повнішої інформації про будь-який фільм. Потімвводтмо номер фільму, що цікавить нас, і читаємо відповідну інформацію. Дляприкладу візьмемо фільм під номером 5.

Малюнок 3.4 Інформація про фільм під номером 5 в відеотеці


Далі ми повертаємося до головного меню, використовуючи клавішу Ентер.

Для того, щоб узяти касету, необхідно в головному меню вибрати пункт «Distribute», ввести номер фільму і своє прізвище для успішного замовлення.

Малюнок 3.5 Успішне замовлення касети

При правильності введення всіх даних в полі «Given» навпроти фільму з’явиться «Yes», що означатиме відсутність касети у відеотеці.

Якщо ви не ввели своє прізвище, то програма видасть помилку «Canceled operation, because Last Name is empty».


Малюнок 3.6 Помилка при замовленні касети

Також буде виведена помилка «Out of Range», якщо ви ввели номер, який не відповідає жодному з фільмів (в даному випадку більше 9).

Малюнок 3.7 Помилка при замовленні касети

Повернення до головного меню здійснюється за допомогою клавіші Ентер.

Для повернення касети в тому ж меню натискаємо цифру 3 («Return»), потім номер фільму.

Малюнок 3.8 Успішне повернення касети

Буде видана помилка, якщо ви хочете повернути касету, яка в даний момент є в наявності, тобто знаходиться не на руках.

Малюнок 3.9 Помилка при поверненні касети

При успішному поверненні касети в полі «Given» навпроти фільму висвітиться «No», що означає наявність касети у відеотеці і можливість її замовлення.

За допомогою натиснення клавіші «2» в головному меню можна додавати фільми у відеотеку, слідуючи простим навігаціям програми.

Малюнок 3.10 Меню додавання фільмів до відеотеки


ВИСНОВОК

У ході виконання даного курсового проекту була розроблена програма мовою високого рівня у середовищі Builder C++, а також вивчені можливості даної мови.

Систематизовано й закріплено практичні навички програмного забезпечення, а також теоретичні знання по основних розділах курсу "Об’єктно-орієнтованого програмування". При виконанні курсового проекту проведено знайомство з інформаційними джерелами по об’єктно- орієнтованому програмуванню з метою аналізу стану розв'язуваного завдання.

Отримано практичні навички роботи в середовищі Builder C++.

В даній курсовій роботі була розроблена система, яка дозволяє зберігати інформацію та використовувати її в праці для рішення конкретних задач. Ця система має назву проблемно-орієнтовані бази даних.

За допомогою розробленої бази відеофільмів можна переглядати інформацію про наявні фільми, а також замовляти або повертати касети, що значно полегшує роботу продавця або виключає його посередність взагалі.

На даний момент можна констатувати значну роль баз даних в дослідженні будь-якого фахівця, що використовує в своїй роботі комп'ютер.


СПИСОК ЛІТЕРАТУРИ

1.  http:www.intuit.ru

2.  Перколаб Ю.В., Браткевич В.В. Объектно-ориентированное программирование. Конспект лекций. – Харьков: Изд. ХГЭУ, 2003. – 168с.

3.  Гиковатый В.М. Основы алгоритмизации на базе ООП. Учебное пособие. Харьков: Изд. ХНЭУ, 2006. – 92 с.

4.  Грэхели Иан Объектно-ориентированные методы. Принципы и практика. 3-е издание: Пер. с англ. – М.: Изд. дом «Вильямс», 2004. – 880с.

5.  Кузин А.В., Левонисова С.В. Базы данных. Учебное пособие для студентов высших учебных заведений. – СПб.: Academia, 2005. – 320 с.

6.  Грабер М. SQL для простых смертных. – М.: Изд. Лори, 2008. – 375 с.

7.  Альфред Ахо, Джеффри Д.Ульман. Структуры данных и алгоритмы. 2003. - 367с.


ДОДАТОК А

Текст програмного коду

#include <vcl.h>

#include <iostream.h>

#include <string.h>

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused

struct videoteka

{

char name[21];

char studio[16];

char genre[16];

char year[5];

char producer[16];

char actors[101];

char about[201];

char bal[3];

char FIO[51];

};

void showlist(FILE* f1)

{

clrscr();

fseek(f1,0,SEEK_SET);

cout<<"No| Name | Studio | Ganre |Year|Estimation|Given|\n";

cout<<"==============================================================================\n";

int i=0;

videoteka ex;

while (fread(&ex, sizeof(ex), 1, f1))

{

printf ("%2i|",i);

printf ("%-20s|",ex.name);

printf ("%-15s|",ex.studio);

printf ("%-15s|",ex.genre);

printf ("%4s|",ex.year);

printf ("%10s|",ex.bal);

if (ex.FIO[0]==0)printf ("No |");

else

printf("Yes |");

cout<<"\n------------------------------------------------------------------------------\n";

i++;

} cout<<"==============================================================================\n";

}

void recive(FILE* f1,char line[255])

{

videoteka ex;

int count=0;

fseek(f1,0,SEEK_SET); //првернення до початку потоку

while (count<=StrToInt(line))

{

if(!(fread(&ex, sizeof(ex), 1, f1)))

{

cout<<("Out of Range");

getchar();

return;

}

count++;

}

if (ex.FIO[0]==0)

{

cout<<"You can not give current movie back, because it is not given out";

getchar();

return;

}

for (int i=0;i<51;i++) ex.FIO[i]=0;

fseek(f1,-51,SEEK_CUR);

fputs(ex.FIO,f1);fputc(0,f1);

cout<<"Completed okey!";

getchar();

}

void delivery(FILE* f1,char line[255])

{

videoteka ex;

int count=0;

fseek(f1,0,SEEK_SET);

while (count<=StrToInt(line))

{

if(!(fread(&ex, sizeof(ex), 1, f1)))

{

cout<<("Out of Range");//номер не відповідає жодному з фільмів

getchar();

return;

}

count++;

}

if (ex.FIO[0]!=0)

{

cout<<"You can not receive current movie, because it is in "<<ex.FIO;

getchar();

return;

}

cout<<"Enter Last Name:"; cin.getline(line,255);

if (line[0]==0)

{

cout<<"Canceled operation, because Last Name is empty";//ви не ввели прізвище замовника

getchar();

return;

}

for (int i=0;i<50;i++) ex.FIO[i]=line[i];

ex.FIO[50]=0;

fseek(f1,-51,SEEK_CUR);

fputs(ex.FIO,f1);fputc(0,f1);

cout<<"Completed okey!";

getchar();

}

void showfull(FILE* f1, char line[255])

{

clrscr();

fseek(f1,0,SEEK_SET);

videoteka ex;

int count=0;

while (count<=StrToInt(line))

{

if(!(fread(&ex, sizeof(ex), 1, f1)))

{

cout<<("Out of Range");

getchar();

return;

}

count++;

}

cout<<"Name:"<<ex.name<<"\n";

cout<<"Studio:"<<ex.studio<<"\n";

cout<<"Genre:"<<ex.genre<<"\n";

cout<<"Year:"<<ex.year<<"\n";

cout<<"Producer:"<<ex.producer<<"\n";

cout<<"Actors:"<<ex.actors<<"\n";

cout<<"About:"<<ex.about<<"\n";

cout<<"Estimation:"<<ex.bal<<"\n";

cout<<"Last Name:"<<ex.FIO<<"\n";

cout<<"Press enter to continue\n"; cin.getline(line,255);

}

void list()

{

FILE* f1;

if (!(f1=fopen("lyb.txt","r+")))//відкриття файлу за допомогою режима «r+», який означає зчитування та запис інформації

{

perror("Error in open file!!!");// помилка у відкритті файла

getchar();

exit(0);

}

showlist(f1);

char line[255];

cout<<"Press enter to continue\n"; cin.getline(line,255);

cout<<"1-View full information about movie\n";

cout<<"2-Distribute movie\n"; //видача касети

cout<<"3-Return movie\n"; //повернення касети

cout<<"Enter:"; cin.getline(line,255);

if (line[0]=='1')

{

cout<<"Enter No of movie:"; cin.getline(line,255);

showfull(f1,line);

line[0]=0;

}

if (line[0]=='2')

{

cout<<"Enter No of movie:"; cin.getline(line,255);

delivery(f1,line);

line[0]=0;

}

if (line[0]=='3')

{

cout<<"Enter No of movie:"; cin.getline(line,255);

recive(f1,line);

line[0]=0;

}

fclose(f1);

}

void library()

{

clrscr();

FILE* f1;

if (!(f1=fopen("lyb.txt","a+")))//відкриття файлу за домогою режима «а+», що означає зчитування та додавання інформації

{

perror("Error in open file!!!");

getchar();

exit(0);

}

do

{

clrscr();

cout<<"Press Enter for exit\n";

videoteka ex1;

char line[255];

for (int i=0;i<255;i++)line[i]=0;

cout<<"Enter name of movie:"; cin.getline(line,255);

if (line[0]=='\0')

{

fclose(f1);

return;

}

for (int i=0;i<20;i++) ex1.name[i]=line[i];

cout<<"Enter studio of movie:"; cin.getline(line,255);

for (int i=0;i<15;i++) ex1.studio[i]=line[i];

cout<<"Enter genre of movie:"; cin.getline(line,255);

for (int i=0;i<15;i++) ex1.genre[i]=line[i];

cout<<"Enter year of movie:"; cin.getline(line,255);

for (int i=0;i<4;i++) ex1.year[i]=line[i];

cout<<"Enter producer of movie:"; cin.getline(line,255);

for (int i=0;i<15;i++) ex1.producer[i]=line[i];

cout<<"Enter actors of movie:"; cin.getline(line,255);

for (int i=0;i<100;i++) ex1.actors[i]=line[i];

cout<<"Enter about movie:"; cin.getline(line,255);

for (int i=0;i<200;i++) ex1.about[i]=line[i];

cout<<"Enter estimation of a film:"; cin.getline(line,255);

for (int i=0;i<2;i++) ex1.bal[i]=line[i];

ex1.FIO[0]='\0';

ex1.name[20]=0;

ex1.studio[15]=0;

ex1.genre[15]=0;

ex1.year[4]=0;

ex1.producer[15]=0;

ex1.actors[100]=0;

ex1.about[200]=0;

ex1.bal[2]=0;

ex1.FIO[50]=0;

fwrite(&ex1,sizeof(ex1),1,f1);//запис даних про тільки-но введені фільми до файлу

}

while (1==1);

}

void menu()

{

char i[255];

do

{

clrscr();

cout<<" Menu\n";

cout<<"1 - List preview\n";

cout<<"2 - Add to the library\n";

cout<<"0 - exit\n";

cout<<"\nEnter:";

cin.getline(i,255);

if (i[0]=='1') list();

if (i[0]=='2') library();

}

while (i[0]!='0');

}

void main()

{

menu(); }


ДОДАТОК Б

Перелік фільмів в відеотеці


Информация о работе «Створення бази відеофільмів»
Раздел: Информатика, программирование
Количество знаков с пробелами: 50803
Количество таблиц: 0
Количество изображений: 11

Похожие работы

Скачать
43226
0
0

... демонстрування діапозитивів, транспарантів, а також дослідів, що проводяться на прозорих пластинках. Зміни, що відбуваються у сфері інформаційних технологій у цілому, формують нову культуру роботи з інформацією, як учителя біології, так і учнів, із використанням сучасної комп'ютерної техніки. Перспективними технічними пристроями екранної проекції є мультимедійні проектори, які характеризуються ...

Скачать
43230
1
1

... ). Групу полімерно-пластикових документів складають: гнучкий магнітний диск, магнітна карта, гнучка та жорстка грамплатівка, оптичний диск - як жорсткий, так і м’який. Існують стандарти на матеріальну основу документа призвані гарантувати механічну міцність (здатність МОД протистояти розрусі документа під дією механічного навантаження - розрив, злам), біостійкість (здатність МОД протистояти дії ...

Скачать
91869
3
6

... дзеркала над демонстраційною плитою протягом багатьох років з успіхом використовуються в кулінарних училищах. 2.2 Експериментальна перевірка ефективності застосування технічних засобів навчання у навчально-виховному процесі при вивченні дисципліни «Кулінарія» Для перевірки результативності засвоєння знань студентами Чернігівського комерційного технікуму з використанням на заняттях технічних ...

Скачать
32077
1
0

... функціям засобів навчання і можливостям вибору цих засобів. Системне вивчення можливостей використання наочних засобів у трудовому навчанні показує, що вони незалежно від їх виду мають задовольняти такі вимоги: ·  науковість і відповідність змісту наочних посібників, навчальним програмам, державним освітнім стандартам, завданням навчально-виховного процесу; ·  відповідність наочних посібників ...

0 комментариев


Наверх