Реферат по предмету "Информатика, программирование"


Створення бази відеофільмів

МІНІСТЕРСТВООСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙТЕХНІЧНИЙ УНІВЕРСИТЕТ
«ХАРКІВСЬКИЙПОЛІТЕХНІЧНИЙ ІНСТИТУТ»
Кафедра«Інтелектуальних комп’ютерних систем»
КУРСОВАРОБОТА
Тема:«Створення бази відеофільмів»
Керівник роботи
ас. каф. ІКС
Кочуєва З.А
Виконавець
студентка групи ІФ-87
Леонт’єва А.В
Харків– 2009р.

ЗАВДАННЯ
нанауково-дослідну курсову роботу
Тема: «Створеннябази відеофільмів»
Короткийзміст роботи:
а)реферативна частина
Оглядлітературних джерел з існуючих методів та алгоритмів рішення задачі створеннябази відеофільмів
б)теоретична частина
Опис основнихпринципів об'єктно-орієнтованого програмування, основ алгоритмізації, типовихсередовищ програмування та особливостей мови програмування С++, розглядосновних методів рішення даної задачі та їх алгоритмів, опис обраного методурозв’язання задачі та його алгоритму експериментальна частина
Розробкапрограмного забеспечення рішення задачі створення бази відеофільмів
Датавидачі завдання: 5.10.08 Термін захисту: 30.12.08
Керівниккурсової роботи: ас. каф. ІКС Кочуєва З. А.

РЕФЕРАТ
КР: 53 с., 10 рис., 7источников, 2 приложения Даннаякурсовая работа посвящена реализации создания базы видеофильмов. Программнаяреализация осуществлена на языке программирования C++ в среде C++Builder 6.Курсоваяработа состоит из введения, трех частей, заключения, списка литературы,содержащего 7 источников. Содержит 53 страницы, 10 рисунков, 2 приложения,введение, заключение. Во введении описывается современноесостояние развития объектно-ориентированного программирования и предпосылкисоздания баз данных. В первой частиописаны основные принципы объектно-ориентированного программирования, типичныесреды программирования и особенности языка С++, основы алгоритмизации. Вовторой части рассмотрен основной метод решения данной задачи. В третьей частиприводится описание программы и результаты, получаемые пользователем прииспользовании данной программы. В заключении подводится итог проделанной работыи дается критический анализ полученных результатов. Приложение содержит текстпрограммы на языке C++, который реализует создание базы видеофильмов.
Ключевые слова и выражения:
АЛГОРИТМ, C++ BUILDER6, БАЗА ДАННЫХ, СТРУКТУРЫ ДАННЫХ,ТИП, ФУНКЦИЯ, СТРУКТУРА.

РЕФЕРАТ
КР: 53 с., 10мал., 7 джерел, 2 додатки Данакурсова робота присвячена реалізації створенння бази відеофільмів. Програмнареалізація здійснена на мові програмування C++ в середовищі C++Builder 6.Курсоваробота складається з введення, трьох частин, висновку, списку літератури, щомістить 7 джерел. Містить 53 сторінки, 10 малюнків, 2 додатки, введення, висновок.У введенні описується сучасний стан розвитку об’єктно-орієнтованогопрограмування та передумови створення баз даних. У першій частині описаніосновні принципи об'єктно-орієнтованого програмування, типові середовищапрограмування і особливості мови С++, основи алгоритмізації. У другій частині наведеосновний метод рішення даної задачі. У третій частині приводиться опис програмиі результати, одержані користувачем при використанні даної програми. У висновкупідводиться підсумок виконаної роботи і дається критичний аналіз одержанихрезультатів. Додаток містить текст програми на мові C++, який реалізуєстворення бази відеофільмів.
Ключові слова івирази
АЛГОРИТМ,C++ BUILDER6, БАЗА ДАНИХ, СТРУКТУРА ДАНИХ, МЕТОД, ТИП, ФУНКЦІЯ, СТРУКТУРА.

ABSTRACT
TP: 53 р., 10 pic., 7 sources, 2 appendixesThis term paper is devoted to realization of making thebase of movies. Programmatic realization is carried out in programming C++language in the environment C++Builder 6.The term paper consists of introduction, three parts,conclusion, list of literature, containing 7 sources. Contains 53 pages, 10 pictures,2 appendixes, introduction, conclusion. Modern development status of theobject-oriented programming and pre-condition of creation of databases isdescribed in introduction. Basic principles of the object-oriented programming,typical programming environments and features of the language С++, basis ofalgorithmisation, are described in the first part. The basic method of decisionof this task is considered in the second part. In the third part is broughtdescription over of the program and results got an user at the use of thisprogram. In conclusion is worked out the total work do and the criticalanalysis of the got results is given. The appendix contsins a program text inlanguage C++, which will realize making the base of movies.
Keywordsand expressions:
ALGORITHM,C++ BUILDER6, DATABASE, DATA STRUCTURES, TYPE, FUNCTION, STRUCTURE.

ЗМІСТ
Вступ
1Використання сучасних систем і мов програмування
1.1Основні принципи об’єктно-орієнтованого програмування
1.2Типові середовища програмування та особливості мови С++
1.2.1Borland C++ Builder
1.2.2Microsoft Visual C++
1.2.3Мова програмування С++
1.3Основи алгоритмізації
2Розробка рішення задачі створення бази відеофілмів
2.1Бази даних
2.1.1Основні положення та моделі БД
2.1.2Типи БД
2.1.3Етапи проектування БД
2.1.4Використання БД
2.2Структури даних
2.3Функції
3Розробка програмного забезпечення для реалізації створення бази відеофільмів
3.1 Описпрограмної реалізації бази відеофільмів
3.2Результати, отримані користувачем при використанні програмного забезпечення
Висновок
Списоклітератури
ДодатокА
ДодатокБ

ВСТУП
Якіснимкроком в розвитку методів структурного програмування став винахідоб'єктно-орієнтованого програмування (мов SmallTalk, C++, Turbo Pascal і ін.).Програми стали будуватися з порівняно простих об'єктів, що складаються з данихі підпрограм їх обробки. Гнучкість об'єктів дозволила дуже просто пристосовуватиїх для власних цілей, докладаючи для цього мінімум зусиль. Програмістиобзавелися готовими бібліотеками об'єктів, але, як і раніше, створенняпризначеного для користувача інтерфейсу вимагало силу-силенна часу і сил,особливо коли програма повинна була працювати під управлінням популярноїопераційної системи Windows і мати графічний призначений для користувачаінтерфейс.
Знанняпро світ розвиваються з неймовірною швидкістю. Причиною тому єнауково-технічний прогрес, заснований на полегшенні роботи та життєдіяльностілюдини та пошуку методів для розв’язання різноманітних задач. Прогрес базуєтьсяна дослідженні, а будь-яке дослідження, в свою чергу, базується на використаннідоступних даних. І у кожного фахівця існує свій, персональний «архів»довідкової інформації, який після машинної обробки та систематизації має виглядбази даних.
Створеннябази даних передбачає рішення цілого комплексу проблем, в тому числі розробкупрограмних, мовних, організаційних і технічних засобів, призначених дляцентралізованого зберігання і колективного використання інформації.

1ВИКОРИСТАННЯ СУЧАСНИХ СИСТЕМ І МОВ ПРОГРАМУВАННЯ
1.1Основні принципи об’єктно-орієнтованого програмування
Якіснимкроком в розвитку методів структурного програмування став винахід об'єктно-орієнтованогопрограмування. Об'єктне і об'єктно-орієнтоване програмування (ООП) виникловнаслідок розвитку ідеології процедурного програмування, де дані і підпрограми(процедури, функції) їх обробки формально не зв'язані. Крім того, в сучасномуоб'єктно-орієнтованому програмуванні часто велике значення мають поняття події(так зване подієво-орієнтоване програмування) і компоненту (компонентнепрограмування).
Першоюмовою програмування, в якій були запропоновані принципи об'єктноїорієнтованості, була Симула. У момент своєї появи (у 1967 році), ця мовапрограмування запропонувала справді революційні ідеї: об'єкти, класи,віртуальні методи і ін., проте це все не було сприйнято сучасниками як щосьграндіозне. Однак, більшість концепцій була розвинена Аланом Кейем і ДеномІнгаллсом в мові Smalltalk. Саме вона стала першою широко поширеноюоб'єктно-орієнтованою мовою програмування.
С++додає до С об'єктно-орієнтовані можливості. Він запроваджує класи, якізабезпечують три найважливіші властивості ООП:
1.     Інкапсуляція;
2.     Наслідування;
3.     Поліморфізм.
Додатковівластивості корисні, та не обов'язкові.
Розглянемосі ці властивості детальніше.
Інкапсуляція
Основнимспособом організації інформації в С++ є класи. На відміну від типу структура(struct) мови С, яка може складатися лише з полів і вкладених типів, клас(class) С++ може складатися з полів, вкладених типів і функцій-членів (memberfunctions). Члени класу бувають публічними (відкритими, public), захищеними(protected) і власними (закритими, приватними, private). В С++ тип структурааналогічний типу клас, відмінність в тому, що за умовчанням члени і базовікласи в структурі публічні, а в класі — власні.
Звідкритими (публічними) членами класу можна робити зовні класу все, щозавгодно. До закритих (приватних) членів не можна звертатися ззовні класу, щобне порушити цілісність даних класу. Спроба такого звертання спричине помилкукомпіляції. До таких членів можуть звертвтися тільки функції-члени класу. Крімвідкритих і закритих членів класу, можуть бути ще і захищені — це члени,доступні класу, що містить їх, його друзям, а також похідним від нього класам.Такий захист членів називається інкапсуляцією.
Використовуючиінкапсуляцію, автор класу може захистити свої дані від некоректноговикористання. Крім того, вона замислювалася для полегшення спільної розробкикласів. Малося на увазі,що при зміні способу зберігання даних, якщо вони оголошені як захищені абовласні, не вимагається відповідних змін в класах, які використовують зміненийклас. Навіть оператор доступу operator [] може бути визначений як такастандартна функція.
/>/>Наслідування
Длястворення класів з доданою функціональністю вводять наслвдування. Клас-наслідувачмає поля і функції-члени базового класу, але не має права звертатися до власних(private) полів і функцій базового класу. У цьому і полягає різниця міжвласними і захищеними членами.
Клас-наслідувачможе додавати свої поля і функції або перевизначати функції базового класу.
Заумовчанням, конструктор спадкоємця без параметрів викликає конструктор базовогокласу, а потім конструктори нестатичних членів-даних, що є екземплярами класів.Деструкція працює в зворотном порядку. Інші конструктори доводиться визначатикожного раз наново. На щастя, це можна зробити викликом конструктора базовогокласу.
Наслідувач– це більш ніж базовий клас, тому, якщо спадкоємств відкрите, то він можевикористовуватися скрізь, де використовується базовий клас, але не навпаки.
Наслідуваннябуває публічним, захищеним і власним. При публічному спадкоємстві, публічні йзахищені члени базового класу зберігають свій статус, а до власних не можутьзвертатися навіть функції-члени спадкоємця. Захищене наслідування відрізняєтьсятим, що при ньому публічні члени базового класу є захищеними членамиспадкоємця. При власному спадкоємстві всі члени базового класу стають власнимичленами класу-спадкоємця. Таким чином, користувач похідного класу не можезвертатися до членів базового класу, навіть якщо вони оголошені я публічні.Клас-наслідувач робить їх власними за допомогою власного спадкоємства. Якправило, публічне наслідування зустрічається значно частіше за інших.
Класможе бути спадкоємцем декількох класів. Це називається множинним наслідуванням.Такий клас володіє полями і функціями-членами всіх його предків.
/>Поліморфізм
Поліморфізмомв програмуванні називається перевизначення снаслідувачем функцій-членівбазового класу.
УC++ є як статичний, так і динамічний поліморфізм, коли функція, що викликається,визначається під час виконання. Для цього функції-члени повинні бутивіртуальними.
Чистовіртуальною функцією називається функція-член, яка оголошена зі специфікатором= 0:
Чистовіртуальна функція може бути залишена без визначення, крім випадку, коливимагається зробити її виклик. Абстрактним класом називається такій, у якого єхоча б одна чисто віртуальна функція-член. Об'єкти таких класів створюватизаборонено. Абстрактні класи часто використовуються як інтерфейси.
1.2Типові середовища програмування та особливості мови С++
1.2.1Borland C++ Buіlder
Системапрограмування Borland C++ Buіlder об'єднала в собі ідеї інтегрованогосередовища розробки, реалізовані компанією в системах програмування TurboPascal й Borland Delphі з можливостями мови програмування C++. Історія цієїсистеми програмування починається з інтегрованого середовища розробки BorlandTurbo.
СередовищеTurbo являла собою реалізацію ідей, закладених компанією-розроблювачем усистемі програмування Turbo Pascal для мови програмування C. Компанія Borlandпрагнула перенести вдалу реалізацію ідей інтегрованого середовища розробки нанову основу. Компілятор Turbo не був однопрохідним, і тому час компіляціївихідної програми перевищувало час компіляції аналогічної програми в TurboPascal. Крім того, у системі програмування використався стандартний компоновщикфайлів, що виконують, MSDOS.
Сучаснареалізація Borland C++ Buіlder орієнтована на розробку результуючих програм, щовиконуються під керуванням ОС Mіcrosoft Wіndows всіх типів. Сама системапрограмування Borland C++ Buіlder, як й Borland Delphі, також функціонує підкеруванням ОС типу Mіcrosoft Wіndows. Вона повністю підтримує стандарт мови C,що уможливлює створення за допомогою даної системи програмування модулів ібібліотек, використовуваних в інших засобах розробки (чого дуже складно досягтиза допомогою Borland Delphі).
Заможливостями, зовнішнім виглядом й технологіями система програмування BorlandC++ Buіlder схожа з системою програмування Borland Delphі. Вее основу покладеніті ж основні ідеї й технології. Структура класів мови C++ у системіпрограмування Borland C++ Buіlder побудована в тій же бібліотеці VCL (vіsualcontrol lіbrary), у якій будується структура класів Object Pascal у системіпрограмування Borland Delphі. Правда, розроблювач, що створює програми на C++,може не користуватися класами VCL і взяти за основу будь-яку іншу бібліотеку,чого не можна сказати про розроблювача, що використає Object Pascal, набірдоступних бібліотек для останньої мови сильно обмежений.
Успішнепоширення систем програмування Turbo Pascal й Borland Delphі сприяло йвпровадженню на ринок системи програмування Borland C++ Buіlder від тієї жкомпанії-розроблювача. Ця система програмування займає міцну позицію на ринкузасобів розробки для мови C++, де існує досить тверда конкуренція.
1.2.2Mіcrosoft Vіsual C++
Системапрограмування Mіcrosoft Vіsual C++ являє собою реалізацію середовища розробкидля розповсюдженої мови системного програмування C++, виконану компанієюMіcrosoft. Ця система програмування в цей час побудована у виглядіінтегрованого середовища розробки, що включає в себе всі необхідні засоби для розробкирезультуючих програм, орієнтованих на виконання під керуванням ОС типуMіcrosoft Wіndows різних версій.
Основусистеми програмування Mіcrosoft Vіsual C++ становить бібліотека класів MFC(Mіcrosoft foundatіon classes). Вэтой бібліотеці реалізовані у вигляді класівC++ всі основні органи керування й інтерфейсу ОС. Також у її склад входятькласи, що забезпечують розробку додатків для архітектури клієнт-сервер ітрехуровневой архітектури (у сучасних версіях бібліотеки). Системапрограмування Mіcrosoft Vіsual C++ дозволяє розробляти будь-які додатки, щовиконуються в середовищі ОС типу Mіcrosoft Wіndows, у тому числі серверні абоклієнтські результуючі програми, що здійснюють взаємодію між собою по одній іззазначених вище архитектур.
Класибібліотеки MFC орієнтовані на використання технологій COM/DCOM, а такожпобудованої на їхній основі технології Actіve для організації взаємодії міжклієнтською й серверною частиною розроблювальних додатків. На основі класівбібліотеки користувач може створювати свої власні класи в мові C++,організовувати свої структури даних.
Навідмінувід систем програмування компанії Borland, система програмування MіcrosoftVіsual C++ орієнтована на використання стандартних засобів зберігання й обробкиресурсів інтерфейсу користувача в ОС Wіndows. Це не дивно, оскільки всі версіїОС типу Wіndows розробляються самою компанією Mіcrosoft. Mіcrosoft Vіsual C++забезпечує всі необхідні засоби для створення професійних Wіndows-приложений.Від версії до версії продукт стає простіше у використанні, розширюютьсяможливості застосування, підвищується продуктивність.
Системапрограмування Mіcrosoft Vіsual C++ витримала кілька реалізацій. Впроцессевиходу нових версій системи програмування було випущено й кілька версійбібліотеки MFC, на якій заснована дана система.
Самапо собі бібліотека MFC є, на думку автора, досить удалою реалізацією широкогонабору класів мови C++, орієнтованого на розробку результуючих програм, щовиконуються під керуванням ОС типу Mіcrosoft Wіndows. Це багато в чомуобумовлене тим, що творець бібліотеки компанія Mіcrosoft одночасно є й творцемОС типу Mіcrosoft Wіndows, на які орієнтований об'єктний код бібліотеки.Бібліотека може бути підключена до результуючої програми за допомогоюзвичайного компоновщика, або використатися як динамічна бібліотека, щопідключає до програми під час її виконання. Бібліотека MFC досить широкопоширена. Її можливо використати не тільки в складі систем програмуваннявиробництва компанії Mіcrosoft, але й у системах програмування іншихвиробників.
1.2.3Мова програмування С++
МоваС++ виникла на початку 1980-х років, коли співробітник фірми «BellLaboratories» Бьерн Страуструп вигадав ряд удосконалень до мови С. До початкуофіційної стандартизації мова розвивалася в основному силами Страуструпа. У1998 році був ратифікований міжнародний стандарт мови С++: «Standard for theC++ Programming Language».
Страуструппочав працювати над «Сі з класами» в 1979 році. Він вирішив доповнити мову С(наступник BCPL) можливостями, що є в мові Симула (Simula). Мова С, будучибазовою мовою системи UNIX, на якій працювали комп'ютери «Bell», є швидкою,багатофункціональною і переносною. Страуструпдодав до неї моєливість роботи зкласами і об'єктами. В результаті, практичні задачі моделювання виявилисядоступними для вирішення як з погляду часу розробки (завдяки використаннюСимула — подібних класів) так і з погляду часу оючислень (завдяки швидкодії С).На початку в С були додані класи (з інкапсуляцією), похідні класи, сувораперевірка типів, inline-функції і аргументи за умовчанням.
У1983г. відбулося перейменування мови з С з класами в С++.
МоваС++ є сумісним знизу-вгору розширенням безпосередньо мови С. Принципова змінаполягає в появі нового реального примітивного типу даних — класу. Ця мова немістить типів даних високого рівня і примітивів, а, подібно мові С, забезпечуєрозширення за допомогою бібліотек. Таким чином, нові типи задаютьсябезпосередньо усередині самої мови.
Умові С++ особлива увага надається можливості підтримки значної частиниіснуючого коду, написаного на мові С. Кроме того стають можливим порушеннязахисту даних і правил типізації, внаслідок чого доступ до даних може виявитисянеправильним. Мова С++ є компромісним рішенням між об'єктно-орієнтованимідеалом і прагматичним підходом.
МоваС++ підтримує абстракцію, спадкоємство, рекурсію і динамічне скріплення.Підтримується також і статичний, і динамічний контроль типів. Система типів єколекцією відносно невеликих дерев. Тому для С++ характерною є тенденціяпідтримування широких та пласких структур класів, яка буде сприяти створеннювузьких і глибоких структур класів.
Однаоригінальна властивість мови С++ пов'язана з можливістю представлення деякійфункції (або класу) привілейованого доступу до закритих частин декількохкласів, членом яких ця функція (або клас) не є. З цією метою така функціяоголошується «другом» даних класів. Ця властивість може бути використане дляспрощення опису операції над двома типами. Ця властивість вимагає украй обережногоставлення внаслідок можливого порушення інкапсуляції.
Вмові С++ не передбачена збірка сміття. Подібна властивість повиннареалізуватися програмістом або надаватися середовищем у вигляді відповіднихбібліотек коду. Останніми в мову С++ були додані шаблони. За їх допомогоюпідтримується необмежена універсальність; проте шаблони були піддані критиці зогляду на те, що вони приводять до роздування коду і уповільнення компіляції.Існує стандартна бібліотека шаблонів (STL), яка може використовуватисябудь-яким компілятором.
МовуС++ можна використовувати як мову об'єктно-орієнтованого програмування, проте всі(або деякі) її об'єктно-орієнтовані властивості можна ігнорувати абонеправильно використовувати. Нині використовується декілька різних версій мови С++,деякі з них є відкритими і загальнодоступними на базі найрізноманітніших машин.
Незважаючина всі ці зауваження мова С++ є однією з най прийнятніших об'єктно-орієнтованихмов програмування для комерційни додатків, призначених для робочих станцій іперсональних комп'ютерів.
Перевагимови С++ такі:
· Можливе виконання будь-яких дій набудь-якому рівні операційної системи;
· Мова С++ є найшвидшою з існуючих ниніоб'єктно-орієнтованих мов;
· Ринок програмістів, які пишуть на мовіС++, достатньо великий.
· Можливість роботи на низькому рівні зпам'яттю, адресами, портами.
· Можливість створення узагальненихалгоритмів для різних типів даних, їх спеціалізація, і обчислення на етапікомпіляції, використовуючи шаблони.
НедолікиС++ полягають в наступному:
· Відсутність автоматичного управлінняпам'яттю (складки сміття) і широко поширеневикористовування покажчиківпризводять до того, що гарантії безпеки на стадії виконання досягаються насилу;
· Погана підтримка модульної. Підключенняінтерфейсу зовнішнього модуля через препроцесорну вставку заголовного файлу(#include) серйозно уповільнює компіляцію, при підключенні великої кількостімодулів.
· Нестача інформації про типи даних підчас компіляції (CTTI).
· Мова С++ є складною для вивчення і длякомпіляції.
· Деякі перетворення типів неінтуїтивні.Зокрема, операція над беззнаковим і знаковим числами видає беззнаковийрезультат.
· Препроцесор С++ (успадковуваний від С)дуже примітивний. Це призводить з одного боку до того, що з його допомогою неможна (або важко) здійснювати деякі задачі метапрограмування, а з іншого, внаслідоксвоєї примітивності, він часто приводить до помилок і вимагає багато дій пообходу потенційних проблем.
· З кінця XX століття в співтоваристві С++набуло поширення так зване метапрограмування на базі шаблонів. По суті, воновикористовує особливості шаблонів C++ в цілях реалізації на їх базіінтерпретатора примітивної функціональної мови програмування, що виконуєтьсяпід час компіляції. Сама по собі дана можливість дуже приваблива, проте,внаслідок вищесказаного, такий код вельми важко сприймати і відладжувати.

1.3Основи алгоритмізації
Однимз основоположних понять інформатики є алгоритм.
Алгоритм- система правив, що чітко описує послідовність дій, які необхідно виконати длявирішення задачі.
/>

Властивостіалгоритмів:
1.   Дискретність;
2.   Однозначністьабо детермінована. Кожна дія алгоритму повинна бути чіткою і однозначною. Дляоднакових початкових даних результат повинен бути одним і тим же.
3.   Кінцівка,результативність. Алгоритм повинен призводити до рішення задачі за кінцевечисло кроків.
4.   Масовістьабо спільність. Алгоритм повинен призначатися не для однієї задачі, а цілогокласу задач.
Длявирішення однієї і тієї ж задачі можуть застосовуватися декілька алгоритмів.Показником якості алгоритму є його ефективність. Ефективність алгоритмувизначається часом рішення задачі і обсягом, необхідним для цього вирішення.
Алгоритммає ієрархічну структуру. Для деяких кроків алгоритму можна складати детальнішіалгоритми, що містять опис даного кроку.
Ступіньдеталізації залежить від мови програмування, яка вибрана для вирішення даноїзадачі. Мови високого рівня вимагають високий ступінь деталізації, ніжнизького.
Існуютьрізні способи запису алгоритмів:
1.     Словеснийопис кожного кроку на словесній мові.
2.     Графічнезображення алгоритму у вигляді блок-схеми (flowchart).
Уструктурному програмуванні застосовуються декілька основних прийомів розробкиалгоритмів.
1.     Методпокрокової деталізації.
Спочаткустворюється загальна структура алгоритму, а потім приробляються окрем частини.
2.     Метод«зверху — вниз».
Спочаткурозробляється задача на родовому рівні, всі підзадачі залишаючи у виглядічорних ящиків, в яких чітко прописані вхідні-вихідні дані.
3.   Метод«знизу — вгору».
Великаувага надається розробці даних, задачі верхнього (родового) рівнявикористовують вже налагоджені і протестовані підзадачі. Але в цьому випадку,якщо виникає необхідність зміни родового рівня, часто доводиться змінювати йпідзадачі.
4.   Метод«від центру по краях».
Виділяєтьсянайскладніша частина задачі, йде пошук ї рішення, а потім проводиться всяробота, що залишилася.
5.   Модульнийметод.
Маєна увазі, що програма складається з окремих модулів. Під «модулем» розумієтьсяфункціонально і логічно замкнута частина програми, реалізовуюча деякіалгоритми. Модуль може бути функцією з чітко певними вхідними і виходятьданими.
Основнамета використовування модуля – можливість його повторного використання длявирішення різних задач.

2 РОЗРОБКАРІШЕННЯ ЗАДАЧІ СТВОРЕННЯ БАЗИ ВІДЕОФІЛЬМІВ
2.1Бази даних
2.1.1Основні положення та моделі БД
Взагалітехнологія баз даних як самостійна гілка розвитку інформатики з’явилася порівнянонедавно: початок досліджень в цій області пов'язують з епохою великих ЕВМ –шістдесятими роками XX в. Тоді ж сформувався теоретичний апарат технології,почалася розробка програмного забезпечення. Термін «база даних» вперше з’явивсяв 1962г., відтоді дещо змінилося його змістовне наповнення (у зв'язку зрозвитком області) і в найзагальнішому вигляді може бути сформульований так:база даних — це сукупність взаємозв'язаних даних при такій мінімальнійнадмірності, яка допускає їх використання оптимальним чином для одного абодекількох додатків в певній предметній області людської діяльності.
Насправдісьогодні існує безліч різних визначень терміну БД, що обумовлене наявністю«можливості перетворення інформаційних масивів інших форматів в бази даних встрогому значенні цього поняття (і навпаки)". Практично будь-яку колекціюданих, які може зчитувати машина, можна при незначній доробці перевести в базуданих, що дозволяє максимально ефективно проводити інформаційний пошук задопомогою відповідної системи управління (СУБД).
Отже,база даних — структурований організований набір даних, що описують характеристикияких-небудь фізичних або віртуальних систем.
«Базоюданих» часто спрощено або помилково називають Системи Управління Базами даних(СУБД). Потрібно розрізняти набір даних (власне БД) і програмне забезпечення,призначене для організації і ведення бази даних (СУБД).
Організаціяструктури БД формується виходячи з таких міркувань:
1.Адекватність описуваному об'єкту/системі — на рівні концептуальної і логічноїмоделі.
2.Зручність використання для ведення обліку і аналізу даних — на рівні так званоїфізичної моделі.
Видиконцептуальних (інфологічних) моделей БД: «сутність — зв'язок», семантичні,графські.
Видилогічних (даталогічних) моделей БД:
1.Документальні (архіви) — орієнтовані на формат документа, дескрипторні,тезаурусні.
2.Фактографічні (картотеки):
— теоретико-графські: ієрархічна модель, мережева модель.
— теоретико-множинні: реляційна модель (ER-модель), багатомірна модель.
— об'єктно-орієнтовані: об'єктна модель.
— засновані на інвертованих файлах.
Нарівні фізичної моделі електронна БД є файлом або їх набором у форматі TXT, CSV,Excel, DBF, XML або в спеціалізованому форматі конкретної СУБД. Також в СУБД впоняття фізичної моделі включають спеціалізовані віртуальні поняття, існуючи вїї рамках — таблиця, табличний простір, сегмент, куб, кластер і т.д.
Нинінайбільше поширення набули реляційні бази даних. Картотеками користувалися допояви електронних баз даних. Мережеві та ієрархічні бази даних вважаються застарілими,об'єктно-орієнтовані поки ніяк не стандартизовані і не набули широкого поширення.Деяке відродження одержали ієрархічні бази даних у зв'язку з появою іпоширенням XML.
2.1.2Типи БД
Укласичній теорії виділяють три основні типи баз даних: ієрархічні, мережеві тареляційні. Останніми роками, з широким розповсюдженням об'єктно-орієнтованихмов програмування, стали активно розвиватися об'єктні бази даних.
Першимиз’явилися ієрархічні бази даних. Інформація в ієрархічній базі організована запринципом деревовидної структури, у вигляді відносин предок/нащадок. Кожензапис може мати не більш одного батьківського запису і декілька підлеглих.Зв'язки записів реалізуються у вигляді фізичних покажчиків з одного запису наінший. Основний недолік ієрархічної структури бази даних — неможливістьреалізувати відносини «багато до багатьох», а також ситуації, колизапис має декілька предків.
Мережеваструктура баз даних з’явилася як розвиток ієрархічної. Треба підкреслити, щотермін «мережева» уживається тут в зовсім незвичному для епохи интернетазначенні. Це слово підкреслює модель зв'язків даних в базі, коли кожен записможе знаходитися у відносинах «багато до багатьох» з іншими записами, що робитьграфічну модель бази схожою на рибальську мережу. Розробляти серйозні додатки врамках мережевої моделі бази даних досить важко, причому складність розробкипри ускладненні задач зростає в геометричній прогресії.
Справжнійпрорив в розвитку баз даних відбувся тоді, коли збільшена потужністькомп'ютерів дозволила повною мірою реалізувати реляційну модель даних. Теоріяреляційних баз даних була розроблена доктором Коддом на початку 70-х років 20століття. У реляційних базах дані зберігаються у вигляді таблиць, щоскладаються з рядків і стовпців. Стовпці таблиць реляційної бази можуть міститискалярні дані фіксованого типу — числа, рядка, дати… Таблиці в реляційнійбазі даних можуть бути зв'язані відносинами «один до одного» або«один до багатьох».
Реляційнібази даних займають зараз домінуюче становище. Не буде великим перебільшеннямсказати, що ієрархічна і мережева структури баз даних пішли в минуле, поступившисясвоїм місцем реляційним базам. MS SQL Server і MS Access, InterBase і FoxPro,PostgreSQL і Paradox… Всі вони побудовані на реляційній моделі даних.Реляційною базою в чистому вигляді є і MySQL.
Об'єктно-орієнтованібази даних з’явилися зовсім нещодавно як природний розвитокоб'єктно-орієнтованих мов програмування. На сьогоднішній день ООБД поки немають широкого розповсюдження, але, поза сумнівом, вони найближчим часом бурхливорозвиватимуться. Це підтверджує і той факт, що розробники багатьох реляційнихБД включають в свої бази засоби роботи з об'єктними типами даних. Такі базиданих одержали назву об'єктно-реляційних. Таким же чином, зокрема, розвиваєтьсяі Oracle. Що була раніше чисто реляційною базою, Oracle починаючи з 8 версіїпідтримує можливість зберігання і обробки об'єктів і без жодної натяжки можебути віднесена до об'єктно-реляційного класу баз даних./>2.1.3 Етапи проектування БД
I.Концептуальне проектування — збирання, аналіз і редагування вимог до даних. Дляцього здійснюються слідуючі заходи:
1.  обстеженняпредметної області, вивчення її інформаційної структури.
2.  виявленнявсіх фрагментів, кожний з яких характеризується призначеним для користувача представленням,інформаційними об'єктами і зв'язками між ними, процесами над інформаційнимиоб'єктами.
3.  моделюванняі інтеграція всіх представлень.
Післязакінчення даного етапу одержуємо концептуальну модель, інваріантну доструктури бази даних. Часто вона представляється у вигляді моделі«сутність-зв'язок».
II.Логічне проектування — перетворення вимог до даних в структури даних. На виходіодержуємо СУБД-орієнтовану структуру бази даних і специфікації прикладнихпрограм. На цьому етапі часто моделюють бази даних стосовно різних СУБД іпроводять порівняльний аналіз моделей.
III.Фізичне проектування — визначення особливостей зберігання даних, методівдоступу і т.д.
Відмінністьрівнів представлення даних на кожному етапі проектування реляційної бази даних:
КОНЦЕПТУАЛЬНИЙРІВЕНЬ — Представлення аналітика (використовується інфологічна модель «сутність-зв'язок»)
·  сутність
·  атрибути
·  зв'язки
ЛОГІЧНИЙРІВЕНЬ — Представлення програміста
·  записи
·  елементиданих
·  зв'язкиміж записами
ФІЗИЧНИЙРІВЕНЬ — Представлення адміністратора
·  групуванняданих
·  індекси
·  методи доступу
 
2.1.4Використання БД
Однимз найбільш розроблених напрямів в інформатиці сьогодні можна назвати створеннябаз даних (БД). Дійсно, будь-яке дослідження базується на використанні інформаціїі у кожного фахівця існує свій, персональний архів довідкової інформації, якийзберігається звичайно у вигляді картотеки з різних вирізок, заміток абопублікацій. Природно, що першою перевагою при знайомстві з комп'ютером,предстає можливість систематизації своїх матеріалів в базу даних, електроннийваріант якої буде набагато зручнішим. Крім того, тут є і інша перевага –можливість використати чужу БД як вторинне джерело і заощадити таким чином масучасу і зусиль, які були б витрачені на дублювання, по суті, однієї і тієї жроботи. Систематизований і проаналізований розробником БД матеріал, системапосилань і пошуку інформації дозволяють, минувши трудомісткий етап чистомеханічної роботи, зосередитися безпосередньо на рішенні поставлених задач.
Створеннябази даних передбачає рішення цілого комплексу проблем, в т.ч. розробкупрограмних, мовних, організаційних і технічних засобів, призначених дляцентралізованого зберігання і колективного використання інформації. Проте заздалегідьслід здійснити відбір цієї самої інформації (яка і складе фонд БД),структурувати її. Тут і починаються основні складнощі. Фактично БД повинна бутиінформаційною моделлю проблеми, яка розв’язується за допомогою БД. Визначенняоб'єкту бази даних принципово важливе, оскільки впливає як на відбір джерел,так і на способи зберігання.
Зодного боку, більшість БД створюється в ході рішення конкретних задач. Цепроблемно-орієнтовані БД. Але є і такі бази, метою створення яких є збереження інформації,що міститься в джерелі, і велика доступність її для дослідника. Ці напрями розвиваютьсяв руслі відповідно методико- і источнико-орієнтованих підходів.
Ідеальноюбула б БД, що суміщає обидва принципи. Дослідник у такому разі дістаєможливість не просто доступу до великого масиву структурованих даних у вигляді,доступному машині для зчитування, але і може створити в цій структурі своївласні моделі, орієнтовані на рішення конкретних історичних задач.
Наданий момент можна констатувати значну роль БД в дослідженні будь-якого фахівця,що використовує в своїй роботі комп'ютер. Важливим досягненням представляєтьсявсе більший перехід останніми роками з рішення чисто практичних задач доосмислення теоретичних і методологічних проблем.
2.2Структури даних
Вобчислювальній техніці структура даних — це програмна одиниця, що дозволяєзберігати і обробляти безліч однотипних і/або логічно зв'язаних даних. Длядодававння, пошуку, зміни і видалення даних структура даних надає деякий набірфункцій, що становлять інтерфейс структури даних. Структура даних часто єреалізацією якого-небудь абстрактного типу даних .
Прирозробці програмного забезпечення велику роль виконує проектування сховищаданих, і представлення всіх даних у вигляді безлічі зв'язаних структур даних.Добре спроектоване сховище даних оптимізує використання ресурсів (таких як часвиконання операцій, використовуваний обсяг оперативної пам'яті, число зверненьдо дискових накопичувачів), що вимагаються для виконання найкритичнішихоперацій.
Структуриданих формуються за допомогою типів даних посилань і операцій над ними увибраній мові програмування .
Різнівиди структур даних підходять для різних додатків; деякі з них мають вузькуспеціалізацію для певних задач. Наприклад, Б-деревья звичайно підходять длястворення баз даних, тоді як хэш-таблиці використовуються повсюдно длястворення різного роду словників, наприклад, для відображення доменних імен вінтернет адреси комп'ютерів.
Прирозробці програмного забезпечення складність реалізації і якість роботи програмістотно залежить від правильного вибору структур даних. Це розуміння далопочаток формальним методам розробки і мовам програмування, в яких саместруктури даних, а не алгоритми, ставляться в розділ архітектури програмногозасобу. Велика частина таких мов володіє певним типом модульної, дозволяючимструктурам даних безпечно перевикористовуватися в різних додатках.Об'єктно-орієнтовані мови, такі як Java, C# і C++, є прикладами такого підходу.
Багатокласичних структур даних представлені в стандартних бібліотеках мовпрограмування або безпосередньо вбудоване в мови програмування. Наприклад,структура даних хэш-таблиця вбудована в мови програмування Lua, Perl, Python,Ruby, Tcl і ін. Широко використовується стандартна бібліотека шаблонів STL мовиC++. Фундаментальними будівельними блоками для більшої частини структур даних ємасиви, записи (конструкція struct в мові С і конструкція record в мові Паскаль), розмічені об'єднання (конструкція union в мові С) і посилання.
2.3Функції
Функція- в програмуванні — один з видів підпрограми. Особливість, що відрізняє її відіншого виду підпрограм — процедури, полягає в тому, що функція повертаєзначення, а її виклик може використовуватися в програмі як вираження.
Зпогляду теорії систем, функція в програмуванні — окрема система (підсистема,підпрограма), на вхід якої поступають управляючі дії у вигляді значеньаргументів. На виході системи одержуємо результат виконання програми. По ходувиконання функції можуть виконуватися також деякі зміни в керованій системі,причому як зворотні, так і незворотні.
Удеяких мовах програмування (наприклад, в Паскалі) функції існують разом зпроцедурами (підпрограмами, що не повертають значення), в інших, наприклад, в С,є єдиним реалізованим видом підпрограми (тобто всі підпрограми є функціями іможуть повертати значення).
Побічнимефектом функції називається будь-яка зміна функцією стану програмногосередовища, окрім повернення результату (зміна значень глобальних змінних,виділення і звільнення пам'яті, введення-виведення і так далі). Теоретичнонайправильнішимє використання функцій, що не мають побічного ефекту (тобто таких,в результаті виклику яких повертається обчислене значення, і лише), хоча напрактиці доводиться використовувати функції з побічним ефектом, хоча б длязабезпечення введення-виведення і відображення результатів роботи програми.Існує специфічна парадигма програмування — функціональне програмування, в якійбудь-яка програма є набором вкладених викликів функцій, що не викликають побічнихефектів. Найвідоміша мова програмування, реалізовуюча цю парадигму — Лісп. Уньому будь-яка операція, будь-яка конструкція мови, будь-яке вираження, окрім константи,є викликами функцій.
програмування база відеофільм

3РОЗРОБКА ПРОГРАМНОГО ЗАБЕСПЕЧЕННЯ ДЛЯ РЕАЛІЗАЦІЇ БАЗИ ВІДЕОФІЛЬМІВ
3.1Опис програмної реалізації бази відеофільмів
На початкуроботи було підключено стандартні бібліотеки мови С , (для роботи з файлами), (для затриманняекрана за допомогою функції getch()), (для роботи зістроками), (введення-виведення даних), (длявикористання функцій псевдовипадкових чисел).
Структура данихvideoteka складається з даних символьного типу (char), які ініціалізують назвуфільму (name), студію запису фільму (studio), жанр фільму (genre), рік випускуфільму (year), режисера фільму (producer), акторів, що грають у фільмі(actors), коротку характеристики фільму (about), суб'єктивну оцінку фільму(bal) і прізвище користувача відеотеки, охочого одержати або повернути касету(FIO).
В моїй програмівикористовуються різноманітні функції, які відповідають за:
1.  Функціяshowlist() записує дані про фільм і зчитує їх при необхідності.
2.  Функціяrecive() дозволяє користувачу повернути касету.Функція також має перевірку на наявність помилок. Якщо касета знаходиться ввідеотеці, про що свідчить надпис «No» в полі «Taken», то програма видастьповідомлення про неможливість сдачі касети в відеотеку: «You can not givecurrent movie back, because it is not given out».
3.  Функціяdelivery() містить інформацію про видачу касети.Якщо касета знаходиться на руках, то функція видає повідомлення пронеможливість видачі касети «You can not receive current movie, because it isin».
4.  Функціяshowfull() показує повну інформацію про фільм.
5.  Функціяlist() організовує меню:
«1-Viewfull information about movie
2-Distributemovie
3-Returnmovie», за допомогою якого стає можливим проглянути всю інформацію про фільм,одержати фільм і повернути його у відеотеку відповідно, що значно спрощуєроботу з програмою.
6.  Функціяlibrary() містить всі фільми, які присутні в відеотеці, а також всю інформаціюпро ці фільми. За допомогою цієї функції також можна додавати фільми до складувідеотеки.
7.  Функціяmenu() дозволяє переглянути інформіцію про всі фільми відеотеки з подальшоюможливістю замовити або повернути будь-яку касету з наявних, додати фільм довідеотеки та вийти з меню за допомогою трьох цифр 1, 2, 0 відповідно: «1 — Listpreview 2 — Add to the library 0 — exit».
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
#include
#include
#include
#include
#include
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
struct videoteka
{
char name[21];
char studio[16];
char genre[16];
char year[5];
charproducer[16];
charactors[101];
char about[201];
char bal[3];
char FIO[51];
};
voidshowlist(FILE* f1)
{
clrscr();
fseek(f1,0,SEEK_SET);
cout
cout
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
i++;
} cout
}
voidrecive(FILE* f1,char line[255])
{
videoteka ex;
int count=0;
fseek(f1,0,SEEK_SET);//првернення до початку потоку
while(count
{
if(!(fread(&ex,sizeof(ex), 1, f1)))
{
cout
getchar();
return;
}
count++;
}
if(ex.FIO[0]==0)
{
cout
getchar();
return;
}
for (inti=0;i
fseek(f1,-51,SEEK_CUR);
fputs(ex.FIO,f1);fputc(0,f1);
cout
getchar();
}
voiddelivery(FILE* f1,char line[255])
{
videoteka ex;
int count=0;
fseek(f1,0,SEEK_SET);
while(count
{
if(!(fread(&ex,sizeof(ex), 1, f1)))
{
cout
getchar();
return;
}
count++;
}
if(ex.FIO[0]!=0)
{
cout
getchar();
return;
}
cout
if (line[0]==0)
{
cout
getchar();
return;
}
for (inti=0;i
ex.FIO[50]=0;
fseek(f1,-51,SEEK_CUR);
fputs(ex.FIO,f1);fputc(0,f1);
cout
getchar();
}
voidshowfull(FILE* f1, char line[255])
{
clrscr();
fseek(f1,0,SEEK_SET);
videoteka ex;
int count=0;
while(count
{
if(!(fread(&ex,sizeof(ex), 1, f1)))
{
cout
getchar();
return;
}
count++;
}
cout
cout
cout
cout
cout
cout
cout
cout
cout
cout
}
void list()
{
FILE* f1;
if(!(f1=fopen(«lyb.txt»,«r+»)))//відкриття файлу за допомогоюрежима «r+», який означає зчитування та запис інформації
{
perror(«Errorin open file!!!»);// помилка у відкритті файла
getchar();
exit(0);
}
showlist(f1);
char line[255];
cout
cout
cout
cout
cout
if(line[0]=='1')
{
cout
showfull(f1,line);
line[0]=0;
}
if(line[0]=='2')
{
cout
delivery(f1,line);
line[0]=0;
}
if(line[0]=='3')
{
cout
recive(f1,line);
line[0]=0;
}
fclose(f1);
}
void library()
{
clrscr();
FILE* f1;
if(!(f1=fopen(«lyb.txt»,«a+»)))//відкриття файлу за домогоюрежима «а+», що означає зчитування та додавання інформації
{
perror(«Errorin open file!!!»);
getchar();
exit(0);
}
do
{
clrscr();
cout
videoteka ex1;
char line[255];
for (inti=0;i
cout
if(line[0]=='\0')
{
fclose(f1);
return;
}
for (inti=0;i
cout
for (inti=0;i
cout
for (inti=0;i
cout
for (inti=0;i
cout
for (inti=0;i
cout
for (inti=0;i
cout
for (inti=0;i
cout
for (inti=0;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
cout
cout
cout
cout
cin.getline(i,255);
if (i[0]=='1')list();
if (i[0]=='2')library();
}
while(i[0]!='0');
}
void main()
{
menu(); }

ДОДАТОК Б
Перелік фільмівв відеотеці
/>


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Pregnancy In Adolescence Essay Research Paper In
Реферат "Правило о пяти чинех архитектуры Иакова Бароция Девигнола" - первая архитектурная грамматика Петровского времени
Реферат Pepole Essay Research Paper Mass communications is
Реферат Censorship Of The Net Essay Research Paper
Реферат Security 2 Essay Research Paper security is
Реферат Desi Baba Essay Research Paper To Kill
Реферат Экологическая угроза
Реферат Менеджер социально-культурной деятельности
Реферат Налоговое планирование и роль юридической службы в этом процессе
Реферат Розробити і виконати жіночу вечірню зачіску з довгого волосся на основі моди зачісок останніх 5–ти років
Реферат Техническое задание на разработку монограммного кипрегеля
Реферат Материалы по химии (кислоты, оксиды, основания, водород)
Реферат Образ автора и главного героя в романе Евгений Онегин
Реферат История музея «Коломенское»
Реферат Rough Riders Essay Research Paper Rough Riders