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


 

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

265. Расчет цилиндрически-червячного редуктора 261 KB
  Определение общего передаточного отношения механизма от двигателя до выходного вала. Предварительный выбор электродвигателя. Построение кинематической схемы механизма. Расчет геометрии цилиндрического прямозубого колеса.
266. Финансирование бюджетных учреждений сферы дошкольного образования на примере Муниципального дошкольного образовательного учреждения детский сад комбинированного вида № 185 Росинка 420.5 KB
  Экономическая сущность и основы деятельности бюджетных учреждений сферы дошкольного образования. Характеристика деятельности бюджетной организации МДОУ Детский сад № 185. Основные направления совершенствования финансирования и деятельности бюджетного учреждения сферы дошкольного образования.
267. Защита информации по паролю в WinWord и WinRar. Системы восстановления паролей AOPR и ARPR 419.5 KB
  Определить правильный пароль, запрашиваемый программой break00.exe – любыми доступными средствами. Определить ожидаемое время подбора пароля при силовой атаке. Определить пароль доступа к архивному файлу.
268. Тяговые и скоростные свойства автомобиля ПАЗ-3205 179.1 KB
  Расчет и построение внешней скоростной характеристики двигателя. Расчет сил тяги и сопротивления движению. Построение динамического паспорта автомобиля. Графики разгона с переключением передач. Время разгона на участках пути 400 и 1000 м.
269. Мировые информационные ресурсы, лекции 561 KB
  Протокол обмена гипертекстовой информацией HTTP. Основные организационные структуры, координирующие работу Internet. Правовое регулирование информационных отношений в сети Интернет. Обзор поисковых систем Интернета. Государственная система научно-технической информации.
270. Проектирование системы автоматического управления поливальной машины 271.56 KB
  Определение элементной базы и расчет передаточных функций выбранных форсунки и датчика расхода. Деление ЛСУ на изменяемую и неизменяемую части. Расчет тахометрического датчика расхода. Построение логарифмических характеристик САУ.
271. Тепловой расчет котлоагрегата ДКВР 20-13 718.5 KB
  В данной работе выполнен тепловой расчет котла ДКВР-20 (двухбарабанный котел водотрубный реконструированный с номинальной паропроизводительностью 20 т/ч). Объем теоретического количества воздуха и объемы продуктов сгорания при α=1.
272. Графические возможности Delphi 210 KB
  На форму нужно установить компонент TImage, на котором простейшими геометрическими фигурами (прямоугольник, дуга) изобразим рисунок. Блок-схема процедуры Picture(Image1: TImage, clientWidth, clientHeight: integer).
273. Развитие цифрового телевидения в развитых странах 59 KB
  На сегодня принимать передачи цифрового телевидения имеют возможность более 90 % населения. Жесткая конкуренция со стороны спутникового и кабельного ТВ. Комбинированные спутниково-эфирные приемники-приставки.