88130

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

Курсовая

Информатика, кибернетика и программирование

В начале работы программы задается цвет основного текста, цвет фона. Переменная r – меню, act – активное меню. Затем вызывается функция menus(меню, выделенное меню) – которая рисует меню вверху программы с выделенным текстом определенной менюшки.

Русский

2015-04-26

123 KB

1 чел.

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

Факультет прикладной информатики

Кафедра информационных систем

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

по дисциплине:

«Технологии программирования»

на тему:  «Разработка программы

управления базой данных»

вариант 8

Выполнил:

студент 2  курса заочного отделения

по специальности: Информационные системы и технологии

шифр ИСУ – 2011 – 3474

Зарипова Лилия Тальгатовна

Проверил:  Беляков Андрей Юрьевич

Пермь - 2012


Содержание

  1.  Краткое описание программы
  2.  Приложение 1. Текст программы.
  3.  Приложение 2. Скриншоты программы.


Краткое описание программы

Описание основных функций программы:

В начале работы программы задается цвет основного текста, цвет фона.

Переменная r – меню, act – активное меню.  Затем вызывается функция menus(меню, выделенное меню) – которая рисует меню вверху программы с выделенным текстом определенной менюшки.

Далее вызывается функция open( «количество записей») – которая проверяет наличие файла, и если необходимо создает и подключает его, читает в массив а также запоминает количество записей в файле

После чего вызывается функция show(“тип данных”, «Количество записей») – функция показывает все записи из файла на экран.

И создается вечный repeat цикл который отслеживает кнопки вправо, влево enter, esc.

После чего мы можем с помощью кнопок право влево, переключаться по меню которое постоянно перерисовывается функцией menus.

В данной программе есть 2 массива с тестом интерфейса, menu – текст меню, inform – все сообщения и фразы системные , которые используются для вывода в интерфейс.

Функция fileexists(“название файла”) определяет существование файла.

Save(«Количество записей») – сохранение изменений в массиве в файл.

Backwindow(“цвет”) – рисует оконтовочку.

interfaces(«номер меню»,”Количество заисей”) – основной интерфейс – выполняет все действия в зависимости от пункта меню.


Приложение 1. Текст программы.

uses crt;

const

dbFilename = 'db.zdb';

type

   student=record

   chet:byte;

   otch,nam,fam,spec:string[20];

   ocen:byte;

end;

var ch:char;

   r,r1,rk,com,glch,x,act,add,s,up,down:byte;

   b:boolean;

   way:string;

   db: file of student;

   d:student;

   ardata,del:array[1..255] of student;

   menu:array[1..6] of string =(

'    Добавить',

'    Удалить' ,

'    Найти',

'    Лучший',

'    Сохранить',

'    Выход');

   inform:array[1..20] of string =(

'  Добавить данные в базу',

'  Удалить данные из базы',

'  Найти данные',

'  Показать лучшего',

'  Сохранить данные',

'  Выход',

'  Для выхода нажмите - Enter, для отмены Esc',

'  Введите Фамилию:  ',

'  Введите Именя:  ',

'  Введите Отчество:  ',

'  Введите специальность:  ',

'  Введите оценку за диплом:  ',

'  №        Фам.  И.О.  Спец  Оцен.',

'  Ошибка! Введено не верное значение, нажмите Enter',

'  Данные успешно сохранены',

'  Введите № для удаления:  ',

'  Для возврата к основной базе нажмите ESC',

'  Введите критерий для поиска:  ',

'  Данные успешно удалены',

'  Удаляемое поле отсутствует, повторите попытку');

procedure menus(r,act:byte);

var i,x,cl,clb,ch:byte;

begin

cl:=4;

clb:=15;

if act=1 then

begin

textbackground(2);

window(1,3,80,3);

clrscr;

for i:=1 to 6 do begin

  if i=r then begin

  textcolor(cl);

 write(menu[i]);

  textcolor(clb);

  end else

  write(menu[i]);

  end;

window(1,23,80,40);

clrscr;

write(inform[r]);

end;

end;

//Проверка существования файла

function fileexists( filename: string): boolean;

var f: file;

begin

{$I-} assign(f,filename); reset(f); {$I+}

fileexists:=(ioresult=0) and (filename<>'');

 close(f);

end;

//Сохранение массива в файл

procedure save(glch:byte);

var i:byte;

begin

way:=dbFilename;

assign(db,way);

rewrite(db);

 for i:=1 to glch do

 write(db,ardata[i]);

close(db);

end;

procedure backwindow(bgcol: byte);

begin

writeln;

textbackground(1);

textcolor(bgcol);

window(1,3,80,23);

textbackground(1);

textcolor(bgcol);

window(24,24,80,24);

textbackground(1);

window(1,4,80,6);

clrscr;

textcolor(8);

writeln(#10,inform[13]);

end;

procedure show(r1,glch:byte);

var i:byte;

begin

 textbackground(0);

 window(1,6,80,22);

 clrscr;

 textcolor(13);

case r1 of

1:for i:=1 to glch do

if ardata[i].chet<>0 then

 writeln(

 ardata[i].chet:3,

 ardata[i].fam+'  ':14,

 ardata[i].nam[0]+'.',

 ardata[i].otch[0]+'.',

 ardata[i].spec:6,

 ardata[i].ocen:5);

2:for i:=1 to glch do

if ardata[i].chet<>0 then

 writeln(

 del[i].chet:3,

 del[i].fam+'  ':14,

 del[i].nam[0]+'.',

 del[i].otch[0]+'.',

 del[i].spec:6,

 del[i].ocen:5);

end;

end;

function interfaces(r,glch:byte):byte;

var i,y,q:byte;

begin

y:=0;

i:=0;

textbackground(3);

window(1,23,80,23);

clrscr;

case r of

1: begin

   inc(glch);

   ardata[glch].chet:=glch;

   write(inform[8]);     readln(ardata[glch].fam);   clrscr;

   write(inform[9]);     readln(ardata[glch].nam[0]);   clrscr;

   write(inform[10]);    readln(ardata[glch].otch[0]);  clrscr;

   write(inform[11]);    readln(ardata[glch].spec);  clrscr;

   write(inform[12]);    readln(ardata[glch].ocen);  clrscr;

   write(inform[1]);

   x:=glch;

   show(1,x);

  end;

2: begin

   b:=true;

   write(inform[16]);

   readln(s);

   for y:=1 to x do

    if ardata[y].chet=s then

     begin

      dec(x);

      b:=false;

       for i:=y to x do

        begin

         ardata[i]:=ardata[i+1];

         ardata[i].chet:=ardata[i].chet-1;

        end;

       clrscr;

       write(inform[19]);

       show(1,x);

      end;

  end;

3: begin

   write(inform[18]);

   readln(rk);

  for i:=1 to x do

   if ardata[i].ocen >= rk then

    begin

     inc(y);

     del[y]:=ardata[i];

    end;

   write(inform[17]);

   show(2,y);

  end;

5: write(inform[15]);

4: begin

  for i:=1 to x do

   if ardata[i].ocen = 5 then

    begin

     inc(y);

     del[y]:=ardata[i];

    end;

   write(inform[17]);

  show(2,y);

  end;

6: begin

  write(inform[7]);

   if ord(readkey)=13 then

    begin

     halt;

     close(db);

    end;

  end;

end;

end;

//открытие файла и составление массива

function open(glch:byte):byte;

begin

if fileexists(dbFilename) = false then //нет файла? создадим

begin

assign(db,dbFilename);

rewrite(db);

close(db);

end;

way:=dbFilename;

assign(db,way);

 reset(db);

 while not(eof(db)) do

 begin

  read(db,d);

    inc(glch);

  ardata[glch]:=d;

 end;

 x:=glch;

 close(db);

end;

//Начало работы программы

begin

textbackground(13);

clrscr;

backwindow(0);

r:=1;

act:=1;

menus(r,act);

open(glch);

show(1,x);

repeat

case ord(readkey) of

75:{влево}

        begin

        if ((r>1) or (r=6))  then dec(r) else r:=6;

        menus(r,act); end;

77:{вправо}

        begin

        if ((r>=1) and (r<>6)) then inc(r) else r:=1;

        menus(r,act); end;

13: case r of

   1..4,6: interfaces(r,x);

   5: begin

       save(x);

       interfaces(r,x);

      end;

   end;

27: show(1,x);

end;

until 2=1;

end.


Приложение 2. Скриншоты программы.


 

А также другие работы, которые могут Вас заинтересовать

16912. Порядок разработки теста в OpenOffice.org Calc 126.5 KB
  Лабораторная работа № 15 Порядок разработки теста в OpenOffice.org Calc Оборудование: ПЭВМ Программное обеспечение: Windows OpenOffice.org Calc. Цель работы: приобретение и закрепление практических навыков работы в OpenOffice.org Calc Теоретическая часть. Тест на тему ЛИЧ...
16913. Логические функции в OpenOffice.org Calc 203.5 KB
  Лабораторная работа № 16 Логические функции в OpenOffice.org Calc Оборудование: ПК Программное обеспечение:Windows OpenOffice.org Calc. Цель работы: приобретение и закрепление практических навыков работы в OpenOffice.org Calc Теоретическая часть Логические функции в OpenOffice.org Calc: 1. IF Условие; Выр
16914. Создание диаграммы в OpenOffice.org Calc 120 KB
  Лабораторная работа №17 Создание диаграммы. Оборудование: ПЭВМ Программное обеспечение: OpenOffice.org Calc. Цель работы: приобретение и закрепление практических навыков работы в OpenOffice.org Calc. Таблица 1. Запустите OpenOffice.org Calc. Сохраните...
16915. Работа с несколькими листами в OpenOffice.org Calc 89.5 KB
  Лабораторные работы № 18Работа с несколькими листами Оборудование: ПК Программное обеспечение: Windows OpenOffice.org Calc. Цель работы: приобретение и закрепление практических навыков работы в OpenOffice.org Calc Задание: 1. Запустить OpenOffice.org Calc. 2. Вычислить объем продаж в магазине То
16916. Решение практических задач в Windows EXCEL 53 KB
  Лабораторная работа № 1920 Решение практических задач. Оборудование: ПЭВМ Программное обеспечение: Windows EXCEL. Цель работы: приобретение и закрепление практических навыков работы в EXCEL Логические функции в EXCEL: ЕСЛИ Условие; Выражение
16917. Создание базы данных в Windows, Access 70 KB
  Лабораторная работа № 21 Создание базы данных Оборудование: ПЭВМ Программное обеспечение: Windows Access. Цель работы: приобретение и закрепление практических навыков работы в Access Общие характеристики MS Access. Структура базы данных Система управления базами
16918. Создание простых запросов в Windows, Access 73.5 KB
  Лабораторная работа № 22 Создание простых запросов. Оборудование: ПЭВМ Программное обеспечение: Windows Access Цель работы: приобретение и закрепление практических навыков работы в Access Выбор записей отвечающих определенному условию можно осуществить как с
16919. Создание реляционной базы данных. Разработка инфологической модели и создание структуры реляционной базы данных 133.5 KB
  Разработка инфологической модели и создание структуры реляционной базы данных Для разработки инфологической информационно-логической модели базы данных выделим три объекта: Студенты Дисциплины и Преподаватели. Типы связей между этими
16920. Формирование сложных запросов в Windows, Access 86 KB
  Лабораторная работа № 2425 Формирование сложных запросов Оборудование: ПЭВМ Программное обеспечение: Windows Access Цель работы: приобретение и закрепление практических навыков работы в Access Задание 1. Формирование сложных запросов Создайте следующие зап