База данных «Завуч школы»

Автор работы: Пользователь скрыл имя, 07 Июля 2013 в 09:05, курсовая работа

Описание работы

Целью данного курсового проекта является реализация программы «База данных «Завуч школы», в которой организуется ввод следующих данных: фамилия, имя ученика, название улицы, номер дома, номер телефона; записывает их в массиве записей и обеспечивает поиск номера телефона по фамилии и имени оператора.
Проанализировав работу завуча школы, мы можем сказать, что разработка базы данных для завуча актуальна. Завуч школы должен знать имена, фамилии, место жительства и номера телефонов каждого ученика класса, быстро и оперативно находить нужные ему данные. Использование базы данных в работе поиска необходимых данных, существенно упростит работу завуча и вся информация, касающаяся класса, будет храниться в одном месте.

Файлы: 1 файл

основные страницы.doc

— 147.00 Кб (Скачать файл)

Для ввода данных о ученике, места жительства, номера телефона, класс, запишем процедуру WriteRecord, в которой выводятся запросы на ввод данных и считываются значения этих данных в соответствующие поля записи.

В разделе описаний запишем  переменные:

- fu типа string и максимальной длиной 15 символов, которая будет принимать значение фамилии ученика;

- n типа string и длиной не более 15 символов, которая будет принимать значение имени ученика;


- st типа string и длиной не более 20 символов, которая будет принимать значение названия улицы;

- nm типа byte, которые будут принимать значение вида письма, полученных оператором;

- ph типа longint, принимающее значение номера телефона ученика;

- k типа word, принимает значение номер класса ученика.

То есть раздел описаний выглядит так:

var

fu: string[15];

n: string[15];

st: string[20];

nm: byte;

ph: longint;

k: word.

Раздел операторов начинается зарезервированным  словом begin. Далее с помощью процедуры ввода writeln выводим запрос о вводе следующих данных: фамилия, имя ученика, название улицы, номер дома, телефон ученика, класс.

Процедура readln необходима для того, чтобы ввести данные для последующей обработки их программой.

Для обращения  к полям записи мы используем оператор присоединения with:

with <имя переменной>

do <имя поля> := <значение>;

with p

do begin

with pname

do begin


familiyauchenika:= fu;

imyauchenika := n

end;

with paddr

do begin

street := st;

number :=nm;

end;

phone := ph;

          klass := k

end;

write(f, p)

Для создания файла  и ввода в него необходимой  операции запишем процедуру CreateFile.

В разделе описаний введем переменную n типа string (строка до 8 символов) для имени файла, переменной a присваиваем значения от 0 до 1:

var

n: string[8];

a: 0..1;

В разделе операторов мы выводи запрос с именем файла  не более 8 символов (переменная n). Для того чтобы файлы стали доступны программе, необходимо выполнить особую процедуру открытия файла – assign. Эта процедура должна всегда предшествовать другим процедурам работы с файлами, так как в соответствие конкретному файлу переменную языка, к которой впоследствии будут обращаться все другие файловые процедуры.

Затем нужно  открыть файл для записи, для этого  используется стандартная процедура rewrite.


 begin

write('vvedite imya faila ');

write('(ne bolee 8 simvilov): ');

readln(n);

assign(f, n);

rewrite(f);

С помощью оператора  повтора repeat … until мы вводим данные об ученике, после введения которых, необходимо ответить на вопрос – будут ли вводиться новые данные, если будут вводиться – нужно нажать 1, если нет – 0. Цикл repeat оканчивается, если вводится 0. Далее процедура close закрывает файл, обеспечивая сохранения в файле всех новых записей. Связь файловой переменной с именем файла, установленная ранее процедурой assign, сохраняется, поэтому файл можно повторно открыть без дополнительного использования процедуры assign.

repeat

WriteRecord;

write('vy budete vvodit sleduyuchuyu ');

write('zapis? 1 - da, 0 - net ');

readln(a);

until a = 0;

writeln;

close(f)

          Процедура чтения данных из файла и вывода информации на экран происходит с помощью Procedure ReadData, сразу начинающаяся с раздела операторов, где с помощью процедуры reset файл открывается для чтения.

reset(f);

write('fail dannych sodergit ');


writeln('sleduyuchuyu informaciyu:');

Операцию вывода содержимого текстового файла на экран запишем с применением  оператора повтора while … do. Условием продолжения цикла запишем недостижение конца файла not eof(f). Процедурой read(f, p) организуем считывание данных из файла по строкам, а процедура write будет построчно выводить данные на экран.

while not eof(f)

do begin

read(f, p);

write('familiyauchenika: ');

writeln(p.pname.familiyauchenika);

write('imyauchenika: ');

writeln(p.pname.imyauchenika);

write('nazvanie ulicy: ');

writeln(p.paddr.street);

write('nomer doma: ');

writeln(p.paddr.numder);

write('telefon uchenika: ');

writeln(p.paddr.phone);

write('nomer klassa: ');

writeln(p.klass);

writeln;

end;

close(f)

end;

Процедура close закрывает файл.


          Процедура Procedure SearchData – процедура поиска информации по фамилии и имени ученика.

Вводим в  разделе описаний следующие переменные:

- fu типа string и максимальной длиной 15 символов, которая будет принимать значение фамилии ученика;

- n типа string и длиной не более 15 символов,  принимающее значение имени ученика;

- flag типа boolean, которая будет принимать значения true или false в зависимости от результатов поиска.

var

fn: string[15];

n: string[15];

flag: boolean;

Процедура reset открывает файл для чтения. Выводятся запросы о фамилии и имени музыканта, по которому необходимо найти какие-либо данные.

begin

reset(f);

write('poisk adresa uchenika nomera telefona, klass ');

writeln('po imeni i familii uchenika');

write('vvedite familiyuchenika');

readln(fu);

write('vvadite imyauchenika: ');

readln(n);

Перед поиском  присвоим переменной flag значение true.

Просмотр всех записей файла данных при поиске запишем, используя оператор повтора while … do. Условие завершения поиска – not eof (f)  (недостижение конца файла) и false.


 flag := true;

while not eof(f) and flag

do begin

read(f, p);

  При помощи условного оператора if, запишем при каких значениях переменной flag (true и false) выводится информация о завершении поиска. Если переменная flag принимает значение false, то выводятся данные об ученику, названии улицы, номер дома, номер телефона, класс. Если flag не принимает значение false, тогда выводится сообщение: «Запись о таком музыканте отсутствует».

if (fu = p.pname.familiyauchenika)

and (n = p.pname.imyauchenika)

then begin

write('address: ');

writeln(p.paddr.street);

write('nomer doma');

writeln(p.paddr.number);

          write(‘telefon uchenika:’);

writeln(p.phone);

write(‘klass:’);

writeln(p.klass);

flag := false

end

end;

if flag

then writeln('zapis o takom ychenike otsutstvuet');

writeln;


end;


В разделе операторов основной программы мы прописываем названия процедур:

begin

CreateFile; {вызов процедуры создания данных и ввода в него   

    необходимой информации}

ReadData; {вызов процедуры чтения данных из файла и вывода

информации на экран}

SearchData {вызов процедуры поиска данных по фамилии и

имени ученика}

end.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Заключение

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

База данных в Turbo Pascal значительно повысит качество и скорость работы завуча школы при поиске необходимой информации.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Список использованных источников

  1. Попов В.Б. Turbo Pascal: Учеб. Пособие. – М.: Финансы и статистика, 2000. – 528 с.: ил.
  2. Лабораторный практикум по программированию на языке Паскаль: Учебное пособие – 3-е изд. доп. и перераб. – Улан-Удэ: Изд-во ВСГТУ, 2004, - 176 с.
  3. Шестакова Т. П. Методические указания по курсу "Программирование и вычислительная физика" -  Ростов-на-Дону, УПЛ РГУ, 2003.
  4. Грогоно П. Программирование на языке Паскаль: Пер. с англ. - М.: Мир 1997. – 382 с.

 

 


Информация о работе База данных «Завуч школы»