Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсач.rtf
Скачиваний:
1
Добавлен:
25.11.2019
Размер:
23.87 Mб
Скачать

3. Математическая формулировка задачи и выбор метода обработки информации

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

1) из базы данных выделить сведения на каждую запись об остатке на начало года, об остатке на конец года, о плане выпуска, а также стоимость в оптовых ценах единицы продукции.

2) выполнить вычисление объема реализации по формуле, указанной в задании.

3) выполнить вычисление стоимости в оптовых ценах всего объема реализации по формуле, указанной в задании.

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

Элемент автоматической сортировки встроен в систему вывода информации через компонент StringGrid. Для этого используется типизированный массив набора данных. При добавлении новой записи происходит перенос данных из StringGrid-а в типизированный массив и затем происходит прямой перебор базы данных с поиском наиболее большего в текстовом смысле значения наименования продукции с использованием функции CompareText. При определении первого большего элемента добавляемая запись записывается между строк типизированного массива, а затем все «не пустые» записи типизированного массива переносятся в уже очищенный StringGrid. Затем типизированный массив очищается.

Таким образом исключается необходимость участия пользователя в процессе сортировки данных. Ход процесса перестроения базы данных как бы вмонтирован в операции по изменению данных. То есть конечной целью разработчика являлась создание унифицированной процедуры по преобразованию массива данных.Однако, данный метод (ровно как и метод «пузырька») применим только для малых объемов баз данных, так как преобразование большого массива информации потребует значительные ресурсы. Поэтому набор данных намеренно был ограничен 100 записями, что в полной мере удовлетворяет поставленному условию (оперирование с более чем десятью записями).

Дальнейшим возможным развитием программы может быть использование стандартизированных типов баз данных со встроенной системой индексации и поиска, со встроенными функциями сортировки. Также возможно интегрирование типизированных файлов с программами Microsoft Office Excel или Access. Также, при необходимости, возможно доработать программу до клиент/серверного положения, которое будет иметь общую систему защищенных баз данных, удобное управление, а также распределение полномочий по добавлению/изменению/удалению записей.

4. Разработка алгоритма, схема алгоритма и его описание.

На основе вышеизложенной математической формулировки задачи, составляем соответствующие подпрограммы:

Sg1.cells

2

Начало

1

1. процедура выполнения действий при загрузке формы: FormShow.

Пояснения к алгоритму 1:

Блок 2 – задание имен фиксированным столбцам в StringGrid.

3

memo1.Lines

Блок 3 – вывод в поле memo сообщения о запуске.

4

Конец

Начало

1

2. процедура очистки StringGrid: CleanSG.

n2=1, Sg1.Rowcount,1

2

Пояснения к алгоритму 2:

Sg1.rows[n2].clear

Блок 2 – цикл перемещения по строкам StringGrid.

3

Блок 3 – очистка строки StringGrid.

Конец

4

3. процедура очистки edit-ов: clearedit.

1

Начало

2

Пояснения к алгоритму 3:

edit1.clear

Блоки 2-6 – очистка edit-ов.

А

B

3

edit2.clear

4

edit3.clear

5

edit4.clear

6

edit5.clear

Конец

7

4. процедура создания новой базы: button4click.

1

Начало

Пояснения к алгоритму 4:

Нет

Да

2