Автор работы: Пользователь скрыл имя, 03 Февраля 2014 в 21:21, курсовая работа
Для удобства и простоты использования, программа будет реализована в виде меню. Используя клавиатуру, можно будет выбирать необходимые действия. С помощью Паскаля я сделаю мою программу проще и удобнее для пользователя.
Целью курсовой работы: является знакомство с историей языка Паскаль, а также символьных и строковых типов данных на языке программирования Паскаль. Задачи: разработка информационно – поисковой системы используя символьные и строковые типы данных на языке программирования Паскаль.
assign (f,filename);
reset(f);
for i:=1 to n do
read(f,ch[i]);
close(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if ch[i].fio>ch[j].fio then {сравниваем 2 строки}
begin
chi:=ch[i]; {проводим перестановку}
ch[i]:=ch[j];
ch[j]:=chi;
end;
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
end;
if p=2 then begin {сортировка по полю возраст}
writeln ('vvedite imya sozdannogo faila');
readln(filename);
assign (f,filename);
reset(f);
for i:=1 to n do
read(f,ch[i]);
close(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if ch[i].voz>ch[j].voz then
begin
chi:=ch[i];
ch[i]:=ch[j];
ch[j]:=chi;
end;
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
end;
if p=3 then begin {сортировка по полю учреждение}
writeln ('vvedite imya sozdannogo faila');
readln(filename);
assign (f,filename);
reset(f);
for i:=1 to n do
read(f,ch[i]);
close(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if ch[i].ych>ch[j].ych then
begin
chi:=ch[i];
ch[i]:=ch[j];
ch[j]:=chi;
end;
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
end;
if p=4 then begin {сортировка по полю стиль}
writeln ('vvedite imya sozdannogo faila');
readln(filename);
assign (f,filename);
reset(f);
for i:=1 to n do
read(f,ch[i]);
close(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if ch[i].stil>ch[j].stil then
begin
chi:=ch[i];
ch[i]:=ch[j];
ch[j]:=chi;
end;
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
end;
if p=5 then begin {сортировка по полю результат}
writeln ('vvedite imya sozdannogo faila');
readln(filename);
assign (f,filename);
reset(f);
for i:=1 to n do
read(f,ch[i]);
close(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if ch[i].rez>ch[j].rez then
begin
chi:=ch[i];
ch[i]:=ch[j];
ch[j]:=chi;
end;
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
end;
end;
procedure udalenie; {процедура удаления}
var m:integer;
begin
clrscr;
writeln ('vvedite imya sozdannogo faila'); {вводим имя файла}
readln(filename);
assign (f,filename);
reset(f);
i:=1;
n:=0;
while not eof(f) do
begin
read(f,ch[i]);
i:=i+1;
n:=n+1;
end;
writeln('vvedite nomer udaliaemoi zapisi'); {вводим номер записи для удаления}
readln(m);
for i:=m to n do
begin {удаляем}
ch[i].fio:=ch[i+1].fio;
ch[i].voz:=ch[i+1].voz;
ch[i].ych:=ch[i+1].ych;
ch[i].stil:=ch[i+1].stil;
ch[i].rez:=ch[i+1].rez;
end;
n:=n-1;
close(f);
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
writeln(‘zapis udalena’);
readln;
end;
begin {тело основной программы}
while True do
begin {меню программы}
clrscr;
Writeln ('':20,' *Menu* ');
Writeln ('':20,'||');
Writeln ('':20,'| 1- sozdanie novogo faila |');
Writeln ('':20,'| 2- vivod dannih |');
Writeln ('':20,'| 3- dobavlenie |');
Writeln ('':20,'| 4- poisk |');
Writeln ('':20,'| 5- sortirovka |');
Writeln ('':20,'| 6- udalenie zapisei |');
Writeln ('':20,'| 0- vihod |');
Writeln ('':20,'||');
Writeln;
Writeln('vi mojete rabotat s uje sozdanim failom "sor" ');
Writeln('');
Readln (m);
case m of
1:sozdanie;
2:vivod;
3:dobavlenie;
4:poisk;
5:sortirovka;
6:udalenie;
0:exit;
else begin Writeln('ne verno!');
readln;
end;
end;
end;
end.
Для запуска программы необходимо открыть файл «zadacha.pas» и нажать на клавишу «F9»(в программе «Pascal ABC»). Появится главное меню в котором мы можем выбрать необходимое действие над файлом (рисунок 3).
Рисунок 3 - основное меню
В пункте первом мы создаем новый файл (рисунок 4).
Рисунок 4 - создание файла
В поле «ФИО» необходимо ввести фамилию имя и отчество участника.
В поле «Возраст» нужно ввести возраст участника, только цифрами
В поле «Учреждение» необходимо ввести учреждение образования в котором обучается участник.
В поле «Стиль» необходимо ввести стиль плавания участника.
В поле «Результат» нужно
ввести результат участника
Выбрав «вывод данных», программа выводит данные в виде таблицы из указанного файла (рисунок 5).
Рисунок 5.(вывод)
При добавлении в файл новых записей необходимо ввести фамилию, возраст, учреждение, стиль и результат заплыва. Эти данные будут записаны в конец таблицы.
При выборе режима «поиск» программа перейдет в другое меню (рисунок 6.), в котором можно будет выбрать необходимый критерий поиска. Поиск осуществляется по полям фамилия, возраст, учреждение, стиль, результат заплыва.
Рисунок 6 - меню поиска
Выбрав пункт «сортировка», появляется меню в котором можно отсортировать указанный файл по необходимому полю (рисунок 7.).
Рисунок 7. (меню сортировки)
При выборе пункта удаление нам необходимо ввести имя файла, из которого нужно удалить строку, и номер строки которую необходимо удалить.
ЗАКЛЮЧЕНИЕ
Паскаль хорош тем, что в нем можно создавать прикладные программы, работающие в реальном времени, предлагая богатую среду программирования, которая делает разработку программ более производительной и более приятной. Именно поэтому я выбрала данный язык программирования для своей курсовой работы.
Подобрала и изучила материал по теме «Строковые и символьные типы данных».
Реализовала программу «Результаты соревнований» на языке программирования Паскаль. Программа выполняет следующие действия: создание файла, просмотр содержимого файла которое выводится в виде таблицы, дополнение файла новыми записями, поиск и сортировка по любому указанному полю, удаление любой строки файла.
Для удобства и простоты использования, программа реализована в виде меню. Созданная программа была разработана с такой целью, что бы любому пользователю было удобно и практично использовать эту программу.
Её можно использовать для записей результатов соревнований по плаванию, которые будут храниться в типизированных файлах. Пользователь сможет легко заносить данные в таблицы, редактировать содержимое, удалять не нужные записи, искать и сортировать по необходимому полю.
Список использованной литературы
Приложение
program zadacha;
uses crt;
type mass=record
fio:string;
ych:string;
stil:string;
voz:integer;
rez:real;
end;
var
chi:mass;
ch,ch1:array[1..25] of mass;
f:file of mass;
i,m,j,k,n,nom:integer;
filename:string;
procedure sozdanie;
var
q:integer;
begin
clrscr;
writeln('vvedite imya faila:');
readln(Filename);
assign(f,Filename);
rewrite(f);
Writeln ('vvedite kolichestvo zapisei');
Readln (n);
q:=0;
for i:=1 to n do
with ch[i] do
begin
q:=q+1;
clrscr;
writeln('vvedite fio ',q,'-go uchasnika');
readln(fio);
writeln('vvedite vozrast ',q,'-go uchasnika');
readln(voz);
writeln('vvedite ycheregdenie');
readln(ych);
writeln('vvedite stil plavaniya');
readln(stil);
writeln('vvedite rezultat zapliva');
readln(rez);
write(f,ch[i]);
end;
close(f);
end;
procedure vivod;
begin
clrscr;
writeln ('vvedite imya sozdannogo faila');
readln(filename);
assign (f,filename);
reset(f);
clrscr;
nom:=0;
writeln('writeln('| # | FIO | VOZRAST | YCHEREGDENIE | STIL |REZYLTAT |');
writeln('|');
while not eof(f) do
with ch[i] do
begin
inc(i);
inc(nom);
read(f,ch[i]);
writeln('|',nom:3,'|',fio:17,'
i:=i+1;
end;
writeln('|');
close(f);
readln;
clrscr;
end;
procedure dobavlenie;
begin
clrscr;
writeln ('vvedite imya sozdannogo faila');
readln(filename);
assign (f,filename);
reset(f);
i:=1;
while not eof(f) do
begin
read(f,ch[i]);
i:=i+1;
end;
writeln('vvedite fio');
readln(ch[i].fio);
writeln('vvedite voz ');
readln(ch[i].voz);
writeln('vvedite ycheregdenie obrazovaniya');
readln(ch[i].ych);
writeln('vvedite stil plavaniya');
readln(ch[i].stil);
writeln('vvedite rezultat zapliva');
readln(ch[i].rez);
n:=i;
close(f);
rewrite(f);
for i:=1 to n do
write(f,ch[i]);
close(f);
end;
procedure poisk;
var e:string;
n1,o:integer;
Информация о работе Разработка информационно – поисковой системы