Учебная работа. Курсовая работа: База данных Расписание поездов

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Контрольные рефераты

Учебная работа. Курсовая работа: База данных Расписание поездов

Санкт-Петербургский муниципальный политехнический институт

Факультет инноватики

Курсовая работа

Дисциплина: Теория и разработка программирования

Тема: база данных «Расписание поездов»


Выполнил студент гр. 2221/1

Керсанова Л.В ________________

(подпись)

Селиванова С.В ________________

(подпись)




Педагог:
к.т.н., доц. Культин Н.Б.

«__» ____________ 2008

Санкт-Петербург

2008

Оглавление

  • Постановка задачки……………………………………………………………………… 2
  • структура данных……………………………………………………………………… 3
  • Метод……………………………………………………………………………….. 3
  • Интерфейс……………………………………………………………………………… 6
  • Процедуры и функции………………………………………………………………… 7
  • Листинги………………………………………………………………………………… 7
  • Выводы…………………………………………………………………………………. 9
  • Литература……………………………………………………………………………… 10

  • 1.
    Постановка задачки

    Написать программку работы с базой данных «Расписание поездов» (рис. 1).


    адресок
    телефон
    Район

    ДМШ № 19
    Рижский пр. д.8
    2596342
    Адмиралтейский

    ДМШ № 31
    Наб. Обводного канала д. 123-б
    3161201
    Адмиралтейский

    ДМШ им. Ляховильцкой
    Садовая ул. д. 32
    3100456
    Адмиралтейский

    Вдохновение
    4-я линия д.29
    3237377
    Василеостровский

    ДМШ № 38
    ул. Симонова д. 8
    5154003
    Выборгский

    ДМШ им. Бородина
    пр. Просвещения д. 82
    5944645
    Калининский

    ДМШ № 9
    ул. Гладкова д. 3
    7865058
    Кировский

    ДМШ № 41
    ул. Косыгина д. 28
    5241562
    Красногвардейский

    Рис. 1.
    база данных, представленная в виде таблицы

    Программка обязана обеспечить решение последующих задач:

    — Подготовку файла данных;

    — Вывод инфы на экран;

    — Поиск инфы в базе данных;

    — Добавление записей в базу данных;

    — Взаимодействие с юзером через меню.

    запрос в базе данных производится по району, в каком размещена музыкальная школа. Результатом является вывод на экран полной инфы о школах запрашиваемого района (заглавие школы, адресок, телефон).

    2. Структура данных

    На диске компа база данных представляет собой текстовый файл. (Листинг 1).

    Листинг 1. файл данных:

    ДМШ № 19

    Рижский пр. д.8

    2596342

    Адмиралтейский

    ДМШ № 31

    Наб. Обводного канала д. 123-б

    3161201

    Адмиралтейский

    ДМШ им. Ляховильцкой

    Садовая ул. д. 32

    3100456

    Адмиралтейский

    Вдохновение

    4-я линия д.29

    3237377

    Василеостровский

    ДМШ № 38

    ул. Симонова д. 8

    5154003

    Выборгский

    ДМШ им. Бородина

    пр. Просвещения д. 82

    5944645

    В оперативки база данных представлена в виде совокупы массивов:

    name:array [1..HB] of string[25];

    adres: array [1..HB] of string[60];

    phone: array [1..HB] of string[10];

    rayon: array [1..HB] of string[20];

    3. метод

    Метод программки приведен на рис. 2.









    com=1 com=3

    com=2





    Нет Да





    Рис. 2.1.
    метод программки









    true









    false











    Рис. 2.2.
    Метод загрузки БД

    4.
    интерфейс

    Взаимодействие с юзером осуществляется с помощью меню и диалогов.

    (Рис. 3.1 – Рис. 3.3)

    Рис. 3.1.
    основное меню

    Рис. 3.2.
    Диалоги ввода инфы

    Рис. 3.3.
    Выполнение запроса

    5.
    Процедуры и функции


    Процедура (функция)
    Описание
    Разраб

    FunctionMenu
    Меню базы данных
    Керсанова Л.В.

    ProcedureLoadDB
    загрузка БД из файла
    Керсанова Л.В

    ProcedureShowDB
    Просмотр инфы
    Керсанова Л.В

    ProcedureSearchDB
    Поиск в БД
    Селиванова С.В

    ProcedureAddDB
    Добавление данных в БД
    Керосанова Л.В

    ProcedureSave
    Сохранение БД

    СелтвановаС.В




    Оформительская работа
    Оформление отчета
    Селиванова С.В

    6. Листинги

    В листингах приведены процедуры загрузки БД из файла, просмотра инфы, поиска в БД и прибавления инфы в БД.

    Листинг 6.1.
    Процедура загрузки БД из файла

    procedure LoadDB;{Процедура загрузки данных из файла}

    var

    f:text;

    begin

    assign(f,’c:tp7School.txt’);{Указание пути к файлу}

    reset(f); {открыть файл для чтения}

    nRec:=0; {количество записей}

    while not EOF(f) do{пока не будет достигнут конец файла производится цикл}

    begin

    nRec:= nRec+1;

    readln(f,name[nRec]);

    readln(f,adres[nRec]);

    readln(f,phone[nRec]);

    readln(f,rayon[nRec]);

    end;

    close(f);{Закрытие файла}

    clrscr;{Чистка экрана}

    end;

    Листинг 6.2
    .
    Процедура просмотра инфы

    procedureShowDB;{Процедура вывода на экран}

    var

    i:integer;

    Begin

    writeln (‘Nazvanie_____________|Adres___________________________|Phone____|Rayon_______________’);

    for i:=1 to nRec do {Вывод всех записей-цикл производится столько

    раз сколько было найдено записей в базе данных}

    begin

    write (name[i]:20,’ | ‘);

    write (adres[i]:30,’ | ‘);

    write (phone[i]:7,’ | ‘);

    writeln (rayon[i]:15);

    end;

    readln;

    end;

    Листинг 6.3.
    Процедура поиска в БД

    procedureSearch;{Процедура поиска}

    var

    Words:string;{Переменная для поиска слова}

    i:INTEGER;

    found:boolean;

    begin

    found:=FALSE;

    Writeln(‘Поиск по району’);

    Write(‘Введите район:_’);

    readln(Words);

    For i:=1 to nRec do

    if rayon[i]=Words{Если элемент массива year совподет

    со значением поискового слова то выполнится действие вывода на

    экран а переменная found примит

    then

    Begin

    Writeln(‘В базе данных найдены сведения ‘) ;

    writeln(name[i],’ | ‘,adres[i],’ | ‘,phone[i],’ | ‘,rayon[i]);

    writeln;

    found:=True;

    i:=i+1;

    end;

    readln;

    if found=False then{Если переменная found не была изенена на

    выведено сообщение что такового элемента найдено не было}

    begin

    Writeln(‘В базе данных не найдено сведений о этом районе’);

    readln;

    end;

    end;

    Листинг 6.4.
    Процедура прибавления инфы в БД

    ProcedureAddDB;{Процедура прибавления в базу данных}

    var

    f:text;

    begin

    nRec:=nRec+1;{Увеличиваем

    Write(‘Введите назване: ‘);

    Readln(name[nRec]);

    Write(‘Введите адресок: ‘);

    Readln(adres[nRec]);

    Write(‘Введите телефон: ‘);

    Readln(phone[nRec]);

    Write(‘Введите район: ‘);

    Readln(rayon[nRec]);

    end;

    7. Выводы

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

    8. Литература

    1. Культин Н. Б. «
    Программирование в Turbo Pascal 7.0 и Delphi»: 3-е изд. – СПб.: БХВ- Петербург, 2007.

    2. Вирт Н. «Методы и структуры данных»: пер. с англ. – М.: мир, 1989. 360 с.

    3. Гринзоу Лу. «Философия программирования для Windows 95/NT»: пер. с англ. — СПб.: знак-Плюс, 1997. — 640 с.

    4. Зелковиц М., Шоу А, Гэннон Дж. «Принципы разработки программного обеспечения»: пер. с англ. – М.: мир, 1982. 368 с.

    5. Фокс Дж. «Программное обеспечение и его разработка»: пер. с англ. – М.: мир, 1985. 368 с.

    ]]>