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. Скриншоты программы.


 

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

8453. Проблемы переходного процесса национальной экономик России и стран Восточной Европы 25.36 KB
  Проблемы переходного процесса национальной экономик России и стран Восточной Европы РБ находится в процессе перехода к гражданскому демократическому обществу со смешенной соц ориентированной экономикой. Прошедшие годы преобразований (особенно начало...
8454. Anatomy and physiology of CVS 17.05 KB
  Anatomy and physiology of CVS The heart is the main organ of the cardiovascular system and is located in the left side of the mediastinum. There are three layers in the heart: the epicardium, the myocardium and the endocardium. The epicardium covers...
8455. Имитационное моделирование однопроцессорной МИКС, имеющей неограниченную очередь 59.5 KB
  Имитационное моделирование однопроцессорной МИКС, имеющей неограниченную очередь Задание: Построить структуру модели, используя блоки GPSS Составить программу на ASSEMBLERE с заданием параметров, имен элементов системы и обяз...
8456. Понятие экономической безопасности 32 KB
  Понятие экономической безопасности. Экономическая безопасность - это такое состояние нац экономики, которое позволяет обеспечить ее устойчивое функционирование в условиях воздействия внутренних и внешних факторов, достаточное удовлетворен...
8457. Моделирование выхода в Internet по телефонным линиям связи для просмотра электронной почты 103.29 KB
  Моделирование выхода в Internet по телефонным линиям связи для просмотра электронной почты. Цель моделирования - определить необходимый ресурс времени для успешного завершения заданного числа выходов в сеть.
8458. Имитационное моделирование вычислительных процессов и систем 486 KB
  Имитационное моделирование вычислительных процессов и систем Моделирование (дискретных систем). Имитационное моделирование. Концептуальная модель системы. Основы технологии имитационного моделирования. Метод с...
8459. Разработать модель одноканальной вычислительной системы с тремя процессорами и тремя режимами обслуживания заявок 300 KB
  Разработать модель одноканальной вычислительной системы с тремя процессорами и тремя режимами обслуживания заявок Задание: Постоянное время обслуживания со средним значением 3 с. (300 тактов). Экспоненциальное представление времени обс...
8460. Моделирование работы склада комплектующих элементов 142.5 KB
  Моделирование работы склада комплектующих элементов Задание: Исходное количество комплектующих 1000 ед. Ежедневно спрос на КИ равновероятно колеблется от 40 до 63 ед. Целевой уровень запаса после заказа израсходованных комплектующих изделий должен б...
8461. Моделирование эффективности процесса технического обслуживания сложного устройства 314.5 KB
  Моделирование эффективности процесса технического обслуживания сложного устройства Задание: В качестве примера рассмотрим модель малого предприятия, сдающего в аренду ПК и обеспечивающего их техническое сопровождение. В качестве « системы техническо...