Разработка информационно-поисковой системы «Зачисление абитуриентов» на языке программирования Паскаль

Автор: Пользователь скрыл имя, 20 Января 2012 в 20:42, курсовая работа

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

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

Содержание

Введение 3
1 Двусвязные списки и основные операции над ними 4
1.1 Двунаправленные списки 4
1.2 Циклические списки 4
1.3 Свойства двунаправленных списков: 7
2 Разработка информационно-поисковой системы «Зачисление Абитуриентов» на языке программирования Паскаль 9
2.1 Постановка задачи 9
2.2 Описание алгоритма 11
2.3 Практическая часть выполнения задачи «Зачисление абитуриентов» на языке программирования 14
2.4 Результат работы программы 30
Заключение 34
Cписок используемых источников 35
Приложения 36

Работа содержит 1 файл

Теория по курсачу, Романюк М.Н., ПО-22.doc

— 244.50 Кб (Скачать)

     if abiturient[i].mesto>abiturient[j].mesto then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     if t=2 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].mesto<abiturient[j].mesto then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end; end;

     3: begin if t=1 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].ball>abiturient[j].ball then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     if t=2 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].ball<abiturient[j].ball then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     end;

     4: begin if t=1 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].lgoti>abiturient[j].lgoti then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     if t=2 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].lgoti<abiturient[j].lgoti then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     end;

     5:begin if t=1 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].osnova>abiturient[j].osnova then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     if t=2 then

     begin

     for i:=1 to n-1 do

     for j:=i+1 to n do

     if abiturient[i].osnova<abiturient[j].osnova then

     begin

     qwerty:=abiturient[i];

     abiturient[i]:=abiturient[j];

     abiturient[j]:=qwerty;

     end;

     rewrite(f);

     for i:=1 to n do

     write(f,abiturient[i]);

     close(f);

     vivod;

     end;

     end;

     end;

     end;

     {Процедура поиска}

     procedure poisk;

     var q:string;

     m,l,x,la,lam:integer;

     begin

     assign(f,fio);

     textcolor(10);

     Writeln ('Выберите критерии поиска');

     Writeln ('1 - ФИО');

     Writeln ('2 - Прописка');

     Writeln ('3 - Набранные баллы');

     Writeln ('4 - Наличие льгот');

     Writeln ('5 - Договорная основа');

     Readln(l);

     reset(f);

     for i:=1 to n do

     read(f,abiturient[i]);

     close(f);

     case l of

     1: begin

     writeln('Введите ФИО');

     readln(q);

     m:=0;

     for i:=1 to n do

     if pos(q,abiturient[i].familia)<>0

     then

     begin

     inc(m);

     abit[m]:=abiturient[i];

     end;

     if m<>0 then

     begin

     textcolor(12);

     writeln ('Абитуриенты: ');

     textcolor(14);

     writeln('|_______________|________________|_______|________|________|');

     writeln('|','   ФИО         | Место прописки | Баллы | Льготы | Основа |');

     writeln('|_______________|________________|_______|________|________|');

     lam:=1;

     for i:=1 to m do

     with abit[i] do

     begin

     write('|',lam,')',familia:15,'|',mesto:16,'|   ');

     writeln(ball:4:1,'|',lgoti:8,'|',osnova:8,'|');

     lam:=lam+1;

     end;

     writeln('|_______________|________________|_______|________|________|');

     end

     else

     writeln('Запись  с ',q,'  не найдена ');

     end;

     2: begin

     writeln('Введите прописку');

     readln(q);

     m:=0;

     for i:=1 to n do

     if pos(q,abiturient[i].mesto)<>0

     then

     begin

     inc(m);

     abit[m]:=abiturient[i];

     end;

     if m<>0 then

     begin

     textcolor(12);

     writeln ('Абитуриенты: ');

     textcolor(14);

     writeln('|_______________|________________|_______|________|________|');

     writeln('|','   ФИО         | Место прописки | Баллы | Льготы | Основа |');

     writeln('|_______________|________________|_______|________|________|');

     lam:=1;

     for i:=1 to m do

     with abit[i] do

     begin

     write('|',lam,')',familia:15,'|',mesto:16,'|   ');

     writeln(ball:4:1,'|',lgoti:8,'|',osnova:8,'|');

     lam:=lam+1;

     end;

     writeln('|_______________|________________|_______|________|________|');

     end

     else

     writeln('Запись  с ',q,'  не найдена ');

     end;

     3: begin

     writeln('Введите  количество баллов по которому  произведете поиск');

     readln(x);

     Writeln('1 - Баллы, выше вами набранного!');

     Writeln('2 - Баллы, ниже вами набранного!');

     Readln(la);

     case la of

     1: begin

     m:=0;

     for i:=1 to n do

     if abiturient[i].ball>=x

     then

     begin

     inc(m);

     abit[m]:=abiturient[i];

     end;

     if m<>0 then

     begin

     textcolor(12);

     writeln ('Абитуриенты: ');

     textcolor(14);

     writeln('|_______________|________________|_______|________|________|');

     writeln('|','   ФИО         | Место прописки | Баллы | Льготы | Основа |');

     writeln('|_______________|________________|_______|________|________|');

     lam:=1;

     for i:=1 to m do

     with abit[i] do

     begin

     write('|',lam,')',familia:15,'|',mesto:16,'|   ');

     writeln(ball:4:1,'|',lgoti:8,'|',osnova:8,'|');

     lam:=lam+1;

     end;

     writeln('|_______________|________________|_______|________|________|');

     end;

     end;

     2: begin

     m:=0;

     for i:=1 to n do

     if abiturient[i].ball<=x

     then

     begin

     inc(m);

     abit[m]:=abiturient[i];

     end;

     if m<>0 then

     begin

     textcolor(12);

     writeln ('Абитуриенты: ');

     textcolor(14);

     writeln('|_______________|________________|_______|________|________|');

     writeln('|','   ФИО        | Место прописки | Баллы | Льготы | Основа |');

     writeln('|_______________|________________|_______|________|________|');

     lam:=1;

     for i:=1 to m do

     with abit[i] do

     begin

     write('|',lam,')',familia:15,'|',mesto:16,'|   ');

     writeln(ball:4:1,'|',lgoti:8,'|',osnova:8,'|');

     lam:=lam+1;

     end;

     writeln('|_______________|________________|_______|________|________|');

     end

     else

     writeln('Баллы с ',q,'  не найдены');

     end;

     end;

     end;

     4: begin

     writeln('Введите льготы(есть/нет)');

     readln(q);

     m:=0;

     for i:=1 to n do

     if pos(q,abiturient[i].lgoti)<>0

     then

     begin

     inc(m);

     abit[m]:=abiturient[i];

     end;

     if m<>0 then

     begin

     textcolor(12);

     writeln ('Абитуриенты: ');

Информация о работе Разработка информационно-поисковой системы «Зачисление абитуриентов» на языке программирования Паскаль