Понедельник, Июль 5th, 2010

Структуры и алгоритмы обработки данных

{**********************************************************
************************  Основная программа **************
**********************************************************}
const
{массив строк — пунктов главного меню}
menu:array[1..7] of string=(‘ Пример сортировки  ‘,’ Исследование (10 эл-тов)’,
‘ Исследование (100 эл-тов) ‘,
‘ Исследование (1000 эл-тов) ‘,
‘ Исследование (10000 эл-тов)  ‘,
‘ О программе ‘
,’ Выход ‘);
var
{массивы чисел, используемые для исследования}
a,a1:array[0..9] of integer;    {10    — чисел}
b,b1:array[0..99] of integer;   {100   — чисел}
c,c1:array[0..999] of integer;  {1000  — чисел}
d,d1:array[0..9999] of integer; {10000 — чисел}
f:byte;                         {показатель того , какой массив
поступает в процедуру для упо-
рядочивания по убыванию:
1     — неупорядоченный (слу-
чайный);
2     — упорядоченный по воз-
растанию;
3     — упорядоченный по убы-
ванию}.
k:char;
item:byte;
begin
clrscr;cursoroff; {гашение курсора}
repeat
textbackground(0);clrscr;
{fill — процедура, заполняющая заданную область  экрана заданными  символами заданного  цвета}
fill(lightgray,1,1,2,80,25,’ ‘);
{menuv — процедура, выводящая на экран вертикальное меню}
menuv(25,10,menu,lightgray,black,red,lightgreen,yellow,’Сортировка’,item,double);
{item — переменная, содержащая номер выбранного пункта меню}
case item of
1:example;
2:begin
{getshadow — процедура, убирающая тень от меню}
getshadow;
{** исследуются 10 упорядоченных по возрастанию элементов **}
{box — процедура, выводящая на экран окно}
box(1,0,80,18,1,15,double,’10 элементов’);
{вызов процедуры upor, генерирующей упорядоченный по возрастанию
массив чисел}
upor(a,a);
{вызов процедуры make, осуществляющей исследование методов сортировки}
make(3,10,a,a1,1);
{** исследуются 10 неупорядоченных (случайных) элементов **}
{вызов процедуры notupor, генерирующей неупорядоченный(случайный)  массив чисел}
notupor(a,a);
{вызов процедуры make, осуществляющей исследование методов сортировки}
make(8,10,a,a1,2);
{** исследуются 10 упорядоченных по убыванию элементов **}
{вызов процедуры make, осуществляющей исследование методов сортировки}
make(13,10,a1,a1,3);
{ожидание нажатия клавиши Esc}
repeat
k:=readkey;
until k=#27;
end;
3:begin
{getshadow — процедура, убирающая тень от меню}
getshadow;
{box — процедура, выводящая на экран окно}
box(1,0,80,18,1,15,double,’100 элементов’);
{исследуются 100 упорядоченных по возрастанию элементов}
upor(b,b);
make(3,100,b,b1,1);
{исследуются 100 неупорядоченных (случайных) элементов}
notupor(b,b);
make(8,100,b,b1,2);
{исследуются 100 упорядоченных по убыванию элементов}
make(13,100,b1,b1,3);
repeat   k:=readkey;    until k=#27;
end;
4:begin
{getshadow — процедура, убирающая тень от меню}
getshadow;
box(1,0,80,18,1,15,double,’1000 элементов’);
{исследуется 1000 упорядоченных по возрастанию элементов}
upor(c,c);
make(3,1000,c,c1,1);

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84

Категория: Учебники