Реферати українською » Информатика, программирование » Створення бази даних про потяги далекого прямування


Реферат Створення бази даних про потяги далекого прямування

Страница 1 из 2 | Следующая страница

Федеральне агентство Російської Федерації за "атомною енергії

>Снежинская державнафизико-техническая академія

>КУРСОВОЙ ПРОЕКТ

На тему:

"Створення бази даних про поїздах далекого сполучення"

>Снежинск 2006


>Реферат

 

Ми вважаємо, що створення програмних засобів ефективніше скористатися алгоритмом дерев. Дерева здійснюють більш поліпшений спосіб пошуку відмінність з інших, й створення самого дерева легко. Є різні дерева: бінарні,mарние, збалансовані, ідеально збалансовані, великомасштабні і багато інших. Щоб вибрати спосіб, який за буде підходитимемо створенню нашої програми, подивимося що є окремі представники від цього сімейства.


1. Опис програми розвитку й її модулів

Для зручності користування у програмі реалізовано меню. У ній опис робота зі створення, читання дерева, пошуку з номера в дереві, пошуку з назві станції.

>intmain()

{>pp=1;T=0;

*>menu[0]= «1. Створення дерева»;

*>menu[1]= «2. Читання дерева»;

*>menu[2]= «3. Пошук за двозначним номером в дереві»;

*>menu[3]= «4. Пошук під назвою станції в дереві»;

*>menu[4]= «5. Кінець роботи»;

*>menu[5]= «Запровадьте номер рядки:»;

>clrscr();

}

/*Функція меню*/

>Main_Menu(void)

{>intns,s;

>flushall();

>do

{>for (>i=0;i<k; і++)

>printf («n %s»,*menu[i]);

>printf («n»);

>if (>s=((scanf («%>d»,&ns)<1)))

{>flushall();clrscr();

>printf («n Помилка у номері!! Будьмо пильними»);

}

}

>while(s);

>switch(ns)

{>case 1:Crt_Der();break;

>case 2:print_der(kr);

>getche();

>break;

>case 3:

/*Пошук за часом*/

>printf («n Запровадьте номер поїзда:»);

>int v;

>scanf («%>d»,&v);

>Poisk_nom_p (>kr, v);break;

>case 4:

/*Пошук по станції призначення*/

>intsr/*,fl*/;

>chars[20];

>printf («n Запровадьте станцію призначення:»);

>scanf («%>s»,s);

>Poisk_st (>kr,s);break;

>case 5:pp=0;

}return 0;

}

>Просмотрим функції для реалізацію програми:

1) Функція >TREE *>der (>TREE *>kr,SISTEMAword)

{>if (>kr==NULL)

{>kr=newTREE;

>printf («n Номер поїзда %d»,word.nom_p);

>printf («n Станція призначення %s»,word.st);

>printf («n Часотправления%.2f»,word.vr);

>kr->w=word;

>kr->c=1;

>kr->l=kr->r=NULL;

}

>elseif (>word.nom_p==kr->w.nom_p)

>kr->c++;

>elseif (>word.nom_p<kr->w.nom_p)kr->l=der (>kr->l,word);

>elsekr->r=der (>kr->r,word;

>returnkr;

)

Функція варта формування дерева. Якщо дерево порожній, записуємо інформацію в вершину. Виділяється пам'ять під новий елемент, порівнюється яка інформація з туристичною інформацією в вузлі. Якщо елементи однакові, включається лічильник.

 

2) Функція >void >Crt_Der()

{

>SISTEMA a;

>a.nom_p=0;

>while (>a.nom_p!=-1)

{

>printf («n Запровадьте номер поїзда: (-1 – вихід)»);

>scanf («%>d», &>a.nom_p);

>if (>a.nom_p==-1)

>break;

>flushall();

{>printf («n Запровадьте назва станції:»);

>scanf («%>s»,a.st);

>printf («n Запровадьте час відправлення:»);

>scanf («%>f», &>a.vr);

>if (>a.nom_p!=-1)

>kr=der (>kr, a);

}

}

}

Функція варта запис у дерево інформації та висновок дерева на екран.

 

3) Функція >voidprint_der (>TREE *>kr)

{>if(kr)

{>print_der (>kr->l);

>printf («n Номер поїзда %d»,kr->w.nom_p);

>printf («n Станція призначення %s»,kr->w.st);

>printf («n Часотправления%.2f»,kr->w.vr);

>printf («n»);

>print_der (>kr->r);

}

}

Функція варта друку дерева. Уprint_der (>kr->l) використовується обхід лівих гілок, інакше тільки уprint_der (>kr->r) обхід правих гілок.

 

4) ФункціяintPoisk_nom_p (>TREE *>d,int v)

{

>if (>d==NULL)

{

>printf («n >t Елемент з заданим ключем ненайденn»);

>return 0;

}

>else

{>if (>v==d->w.nom_p)

{

>printf («n Станція призначення %s»,d->w.st);

>printf («n Часотправления%.2f»,d->w.vr);

>getch();

}

>if (>v<d->w.nom_p)Poisk_nom_p (>d->l, v);

>if (>v>d->w.nom_p)Poisk_nom_p (>d->r, v);

}

Функція варта пошуку за двозначним номером поїзда. Здійснюється пошук елемента з заданим ключем. Використовується рекурсивний обхід.

5) ФункціяintPoisk_st (>TREE *>d,chars[20])

{>intsr,fl;

>if (>d==NULL)

>printf («n >t Елемент з заданим ключем ненайденn»);

>else

{>sr=strcmp (>s,d->w.st);

>if (>sr<0)

{>q=d;

>fl=1;

>Poisk_st (>d->l,s);

}

>else

>if (>sr>0)

{>q=d;

>fl=0;

>Poisk_st (>d->r,s);

}

>else

{>if (>sr==0)

>printf («n Номер поїзда %d»,kr->w.nom_p);

>printf («n Часотправления%.2f»,kr->w.vr);

>getch();

}

>if (>s<d->w.st)Poisk_st (>d->l,s);

>if (>s>d->w.st)Poisk_st (>d->r,s);

}

}

Функція варта пошуку під назвою станції. Здійснюється пошук елемента з заданим ключем. (>q=d – зберігаємо попередню вершину, >fl=1 – рухаємося вліво,

>Poisk_st (>d->l,s) – спускаємося вліво, >fl=0 – рухаємося вправо, >Poisk_st (>d->l,s) – спускаємося вправо). Використовується рекурсивний обхід.

2. Програмна документація

Технічне завдання, що б вимоги, які пред'являються ПО, необхідні стадії і продовжити терміни розробки, види випробувань

1. Запровадження.

Програма «Розклад залізниці 2007» застосовується у роботи залізниці вокзалах оператором і звичайними користувачами, тобто. людьми.

2. Підстава і розробити.

Розробка цього вироби ведеться виходячи з допомоги у роботу з легкості створення і введення змін - у розклад поїздів далекого сполучення.

3. Призначення розробки.

Функціональне і експлуатаційне призначення програми залежить від виявленні різноманітних помилок, проблем, соціальній та ефективності роботи у час доби.

4. Вимоги до програми:

             Вимоги до функціональних характеристик.

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

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

             Умови експлуатації.

Вигляд обслуговування – роботу з людьми на залізниці вокзалі. Кількість персоналу залежить від управляючого, але йому підбирати кваліфікований персонал.

             Вимоги до інформаційної та програмної сумісності.

Програма мають забезпечувати введення (висновок) даних, і з російської, і з англійської. Час вводиться (виводиться) на екран через точку, яка відокремлює годинник від хвилин.

5. Вимоги до програмної документації.

Програмна документація повинна містити цих пунктів як: основу розробки, призначення розробки, певні вимоги до програми (до функціональних характеристик, до місцевих умов експлуатації, до інформаційної та програмної сумісності та інших.), техніко-економічні показники, етапи розробки та порядок контролю та приймання.

6.Технико-економические показники.

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

7. Етапи розробки.

Розробляється програма етапами. Спочатку створюється база даних про поїздах далекого сполучення (вводиться номер поїзда, назва станції призначення, час відправлення), після забезпечується її висновок на екран, далі можна проводити пошук за безплатним номером і назві станції.

8. Порядок контролю та приймання.

Види випробувань ви можете подивитися в Додатку 2. Загальні вимоги до приймання роботи: налагоджена робота програми, забезпечує правильну роботу всіх пунктів технічного завдання, тобто. створення бази даних про поїздах дальнього слідування і забезпечення пошуку за двозначним номером потяги та станції призначення.

Програма й методику випробувань

1. Об'єкт випробувань.

Найменування програмного продукту – «Розклад залізниці 2007». Застосовується цей продукт може на залізниці вокзалах як оператором, і простими людьми. «Розклад залізниці 2007» проходить дію у цілях спрощення роботи обслуговуючого персоналу.

Технічне завдання:

Створити базі даних про поїздах далекого сполучення. Інформації про поїзді повинна містити такі пункти:

1) Номер поїзда

2) Назва станції

3) Час відправлення

Пошук здійснювати за двозначним номером потяги та під назвою станції.

2. Мета проведення випробувань.

Через війну випробування відбувається виявлення помилок, збоїв, різних похибок у роботі програми, і навіть небайдужа і комфортабельність.

3. Вимоги до програми.

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

4. Вимоги до програмної документації.

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

5. Порядок проведення випробувань.

1) Створення бази даних про поїздах далекого сполучення.

2) Перегляд отриманої інформації.

3) Здійснити пошук базі даних за двозначним номером поїзда.

4) Здійснити пошук базі даних під назвою станції призначення.

Текст програми

Текст програми з докладними коментарями ми можемо переглянути в Додатку 1. Подивимося призначення головних функцій:

1. ФункціяTREE *>der (>TREE *>kr,SISTEMAword) – варта формування дерева. Якщо дерево порожній, записуємо інформацію в вершину. Виділяється пам'ять під новий елемент, порівнюється яка інформація з туристичною інформацією в вузлі. Якщо елементи однакові, включається лічильник.

2. ФункціяvoidCrt_Der() – варта запис у дерево інформації та висновок дерева на екран.

3. Функціяvoidprint_der (>TREE *>kr) – варта друку дерева.

4. ФункціяintPoisk_nom_p (>TREE *>d,int v) – варта пошуку за двозначним номером поїзда.

5. ФункціяintPoisk_st (>TREE *>d,chars[20]) – варта пошуку під назвою станції.

Опис програми, де є інформацію про логічного структурі та функціонуванні ПО

1. Загальні відомості.

Програма називається «Розклад залізниці 2007». Мова програмування, у якому написана програма – З++.

2. Функціональне призначення.

Класи розв'язуваних завдань:

1) Створення бази даних про поїздах далекого сполучення.

2) Читання бази даних.

3) Пошук за двозначним номером поїзда.

4) Пошук під назвою станції призначення.

3. Опис логічного структури.

             ФункціяvoidCrt_Der() – варта запис у дерево інформації та висновок дерева на екран.

3.2. Функціяvoidprint_der (>TREE *>kr) – варта друку дерева.

             ФункціяintPoisk_nom_p (>TREE *>d,int v) – варта пошуку за двозначним номером поїзда.

3.4. ФункціяintPoisk_st (>TREE *>d,chars[20]) – варта пошуку під назвою станції.

4. Вхідні дані.

Мають бути запроваджені такі дані як: номер поїзда, станція призначення, час відправлення:

Запровадьте номер поїзда: (-1 – вихід) 2

Запровадьте назва станції:Moskva

Запровадьте час відправлення: 13.05

5. Вихідних даних.

Повинні відповідати вхідним даним:

Номер поїзда 2

Станція призначенняMoskva

Час відправлення 13.05

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

1. Призначення і науковотехнологічна галузь застосування.

Застосовується цей продукт може на залізниці вокзалах як оператором, і простими користувачами. Його назва «Розклад залізниці 2007» говорить про призначенні, тобто. про нове, поліпшеною та простий роботі персоналу.

2. Технічні характеристики.

Постановка завдання.

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

Опис алгоритму і програми.

Програма починає працювати з спеціального меню, у якому описано такі пункти:

5) Створення бази даних про поїздах далекого сполучення.

6) Перегляд отриманої інформації.

7) Здійснити пошук базі даних за двозначним номером поїзда.

Здійснити пошук базі даних під назвою станції призначення.

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

Перший пункт призначений до створення бази й заповнення чи програмістом, або спеціально навченим співробітником залізниці вокзалу;

Другий пункт призначений для перегляду загальної інформації;

Третій пункт призначений для користувачів. У рядку «Запровадьте номер поїзда» вводиться шуканий номер потяги та після натисканняEnter програма здійснює пошук за двозначним номером поїзда. Через війну видаються інформацію про станції призначення і часу відправлення.

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

П'ятий пункт призначений для повернення до найбільш витратну програму.

Вибір алгоритму походить з підставі методу «>Двоичное дерево».

3. Очікувані техніко-економічні показники.

Перевага обраного варіанта технічного рішення: зручна і полегшена робота персоналу.

4. Джерела, використовувані розробки.

>ХусаиновБ.С. «Структури і алгоритми обробки даних. Приклади мовою Сі:Учеб. посібник. – Фінанси і статика, 2004. – 464 з.: мул.».

3.Эксплуатационная документація

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

При експлуатації програма веде себе в такий спосіб:

1. Створення дерева.

Вводимо номер поїзда, назва станції та палестинці час відправлення поїзда. Коли запровадили дані у рядку «Запровадьте номер поїзда: (-1 – вихід)» вводимо -1 щоб вийшла у основне меню.

>Протестированний відповідь:

Запровадьте номер поїзда: (-1 – вихід) 2

Запровадьте назва станції:Moskva

Запровадьте час відправлення: 13.05

Номер поїзда 2

Станція призначенняMoskva

Час відправлення 13.05

Запровадьте номер поїзда: (-1 – вихід) 1

Запровадьте назва станції:Kasli

Запровадьте час відправлення: 12.10

Номер поїзда 1

Станція призначенняKasli

Час відправлення 12.10

Запровадьте номер поїзда: (-1 – вихід) 3

Запровадьте назва станції:Kasli

Запровадьте час відправлення: 15.35

Номер поїзда 3

Станція призначенняKasli

Час відправлення 15.35

Запровадьте номер поїзда: (-1 – вихід) 5

Запровадьте назва станції:Kirov

Запровадьте час відправлення: 11.55

Номер поїзда 5

Станція призначенняKirov

Час відправлення 11.55

Запровадьте номер поїзда: (-1 – вихід) 4

Запровадьте назва станції:Volgograd

Запровадьте час відправлення: 17.55

Номер поїзда 4

Станція призначенняVolgograd

Час відправлення 17.55

Запровадьте номер поїзда: (-1 – вихід) – 1

2. Читання дерева.

При виклик цього пункту меню проглядається вся введена інформація у пункті 1. Для виходу в основне меню потрібно натиснутиEnter.

>Протестированний відповідь:

Номер поїзда 1

Станція призначенняKasli

Час відправлення 12.10

Номер поїзда 2

Станція призначенняMoskva

Час відправлення 13.05

Номер поїзда 3

Станція призначенняKasli

Час відправлення 15.35

Номер поїзда 4

Станція призначенняVolgograd

Час відправлення 17.55

Номер поїзда 5

Станція призначенняKirov

Час відправлення 11.55

3. Пошук за двозначним номером поїзда.

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

>Протестированний запит:

Запровадьте номер поїзда: 4

>Протестированние відповіді:

Станція призначенняVolgograd

Час відправлення 17.55

>Протестированний запит:

Запровадьте номер поїзда: 7

>Протестированний відповідь:

Елемент з заданим ключем не знайдено

4. Пошук під назвою станції в дереві.

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

>Протестированний запит:

Запровадьте станцію призначення:Kasli

>Протестированние відповіді:

Номер поїзда 1

Час відправлення 12.10

Номер поїзда 3

Час відправлення 15.35

>Протестированний запит:

Запровадьте станцію призначення:Krasnodar

>Протестированний відповідь:

Елемент з заданим ключем не знайдено

>Формуляр, що визначає основні характеристики ПО, комплектність і є дані про експлуатацію

1. Загальні вказівки.

Перед експлуатацією необхідно ознайомитися з певним експлуатаційним документом (дивися Додаток 1).

1. Загальні відомості.

Найменування програмного вироби – «Розклад залізниці 2007». Це пробна програма підвищення діяльності оператора залізниці вокзалу. Програмний продукт

Страница 1 из 2 | Следующая страница

Схожі реферати:

Навігація