Постановка задач



бет2/8
Дата07.04.2023
өлшемі0,65 Mb.
#80314
1   2   3   4   5   6   7   8
Байланысты:
KURSOVAYa YaZYKI 2

ПРИЛОЖЕНИЯ

Приложение А-Таблица идентификаторов программы


(обязательное)
ТаблицаА1. Глобальные идентификаторы программы

Программный
объект

Идентификатор

Тип

Назначение

Тип

tmas=array[1..1500]

integer

Исходный массив

Переменная

b

Mas2

Массив вводимых чисел

B1

Mas2

f

txt

Файловая переменная

I

integer

Параметр цикла

J

integer

Переменная

m

Integer

Количество шагов

h

integer

x

integer

Порядковый номер элемента

l

integer

Нижняя граница массива

r

integer

Верхняя граница массива




m

integer

Количство перестановок

Приложение Б-Листинг программы


(обязательное)
//Курсовой проект
//на тему: Нечисленная обработка данных (сортировка и поиск)
//выполнила: студентка группы ДМ1-44 Жубатканова Айгерим
program KursSort;


type
PNode = ^TNode;{тип для указателя на TNode}
TNode = record {структура под узел дерева}
val: Integer; {значение}
L, R: PNode; {указатель на левое и правое поддерево}
end;


var{объявление переменных}
F: Text; {файловая переменная}
mas: array of Integer; {массив n элементов}
n: integer;{количество элементов в массиве mas}
m: Integer;
masissort: boolean;{был ли отсортирован массив}
{============= ОПИСАНИЕ ПРОЦЕДУР ==============================================}
{Процедура формирования меню}
procedure Menu;
begin
writeln;
writeln('Меню:');
writeln(' 1-создание нового массива');
writeln(' 2-показать исходный массив');
writeln(' 3-линейный поиск элемента в массиве');
writeln(' 4-двоичный поиск элемента в массиве');
writeln(' 5-сортировка массива методом пузырька');
writeln(' 6-сортировка массива с помощью двоичного дерева');
writeln(' 0-выход из программы');
write('> ');
end;
{------------------------------------------------------------------------------}
{1-создание нового массива
(использует глобальные переменные F, mas, n)}
procedure CreateMas();
var
genAvto: Boolean; {метод создания массива: вручную, автоматически }
y, i: Integer;


begin
{очистим массив}
SetLength(mas, 0);
{спросим сколько элементов создать}
writeln('Введите кол. элементов (от 1 до 15 или выше возможно 16, 128, 512, 1024):');
readln(n);
{коррекция допустимой длины массива}
if n < 1 then n := 1
else if (n > 15) and (n < 128) then n := 16
else if (n > 128) and (n < 512) then n := 128
else if (n > 512) and (n < 1024) then n := 512
else if (n > 1024) then n := 1024;
WriteLn(F, 'Создание массива n = ', n);
WriteLn('Создание массива n = ', n);
{создаем динамический массив (индексация с 0 до n-1)}
SetLength(mas, n);
genAvto := True; {метод создания массива: вручную, автоматически }
{заполняем массив вручную если n <= 16}
if n <= 16 then
begin
{спросим будем ли вручную генерировать}
write('Ввести массив с клавиатуры (1-да, 0-нет)?: ');
readln(y);
genAvto := y = 0;
end;
{заполнение данными массива}
for i := 0 to n - 1 do
begin
if genAvto then
mas[i] := random(1000) {число от 0 до 999}
else {иначе предложить ввести пользователю}
begin
write('mas[', i, '] = ');
readln(mas[i]);
end;
end;
end;
{------------------------------------------------------------------------------}
{2-показать исходный массив
(использует глобальные переменные F, mas, n)}
procedure ShowMas();
var
i: Integer;


begin
Writeln(F, 'Элементы массива:');
Writeln('Элементы массива:');
if n > 0 then


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет