Алгоритмизация и программирование процессов на Fox

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

ти и суммарном выпуске каждой продукции.

* Командный файл Zad2 - печать сведений об объемах и стоимости продукции

set Talk off

set Status off

set Escape off

Clear

@ 4,15 to 4,64 Color u/w*

@ 3,15 Say Процесс печати сведений об объемах всей продукции Color u/w*

@ 12,0

Accept Введите имя файла данных: to NameFd

@ 12,0 Clear

If Len(NameFd) >0&& Если имя файла не ввели, то печатать нечего

Use &NameFd

 

* Формирование шапки таблицы

L=+---------------------+---------------+---------------------+

@ 7,10 Say L

@ 8,10 Say | Вид продукции | Общий объем | Суммарная стоимость |

@ 9,10 Say L

 

* Сортировка данных по виду продукции

Index On VidProd to &NameFd&& Создание индексного файла

Use &NameFd Index &NameFd

 

* Формирование строк таблицы

Row=10 && Текущий номер строки для вывода данных

Do While .Not.EOF()

VP=VidProd

RNom=RecNo()&& Запомнить номер текущей записи

Sum Volum For VidProd=VP to AllVol&& Общий объем

Sum Volum*Price For VidProd=VP to AllPrice&& Суммарная стоимость

GoTo RNom&& Вернуться на текущую запись

@ Row,10 Say |

@ Row,12 Say VidProd

@ Row,32 Say |

@ Row,37 Say AllVol Picture ### ###

@ Row,48 Say |

@ Row,55 Say AllPrice Picture ### ###.##

@ Row,70 Say |

 

* Пропуск записей с отработанным видом продукции

Do While VidProd = VP And .Not.EOF()

Skip

EndDo

Row=Row+1

EndDo

 

* Формирование итоговой части таблицы

@ Row,10 Say L

Close DataBases && Закрытие ФД

Delete File NameFd + .idx&& Удаление индексного файла

EndIf

 

* Конец работы

@ 24,0

Wait Для возврата в меню нажмите любую клавишу ...

@ 24,0 Clear

Return

  1. Печать упорядоченного по суммарной стоимости списка продукции пяти видов

* Командный файл Zad3 - печать упорядоченных сведений о стоимости продукции

set Talk off

set Status off

set Escape off

Clear

@ 4,9 to 4,71 Color u/w*

@ 3,9 Say Печать сведений о суммарной стоимости продукции по возрастанию Color u/w*

@ 12,0

Accept Введите имя файла данных: to NameFd

@ 12,0 Clear

If Len(NameFd) >0&& Если имя файла не ввели, то печатать нечего

Use &NameFd

 

* Формирование шапки таблицы

L=+---------------------+---------------------+

@ 7,17 Say L

@ 8,17 Say | Вид продукции | Суммарная стоимость |

@ 9,17 Say L

 

* Поиск продукции с наименьшим значением стоимости

Store 0 to MinAP, LastAP

For I=1 to 5&& Цикл для пяти видов продукции

Do While .Not.EOF()&& Цикл поиска нового минимума

VP=VidProd&& Текущий вид продукции

RNom=RecNo()&& Текущая запись

Sum Volum*Price For VidProd=VP to AllPrice

If AllPrice > LastAP

If AllPrice < MinAP Or MinAP=0

MinAP=AllPrice

MinVP=VP

EndIf

EndIf

If RNom < RecCount()

GoTo RNom+1&& Переход на следующую запись

EndIf

EndDo

 

* Формирование строки таблицы

@ 9+I,17 Say |

@ 9+I,19 Say MinVP

@ 9+I,39 Say |

@ 9+I,46 Say MinAP Picture ### ###.##

@ 9+I,61 Say |

LastAP=MinAP&& Предыдущее минимальное значение

&& (нижняя граница минимальных значений)

MinAP=0

GoTo Top&& Возобновить просмотр с первой строки

Next

* Формирование итоговой части таблицы

@ 15,17 Say L

Close DataBases && Закрытие ФД

EndIf

* Конец работы

@ 24,0

Wait Для возврата в меню нажмите любую клавишу ...

@ 24,0 Clear

Return

  1. Результаты решений

Выбор создания файла данных

 

 

 

 

1Ручка10002,001Карандаш5001,501Фломастер10004,701Чернила5003,002Ручка12001,852Фломастер7505,002Ластик50001,202Карандаш15001,353Чернила4003,203Ручка8001,903Карандаш12001,403Фломастер20004,504Ручка9001,854Ластик2002,004Фломастер14004,704Чернила5003,055Карандаш7001,455Чернила11002,605Ластик14001,655Фломастер5005,30

 

Выбор чтения файла данных

 

 

 

 

Выбор добавления данных в файл данных

 

 

6Ластик6001,556Чернила8003,106Карандаш10001,55

 

Выбор выполнения Задания №1

 

 

 

 

Выбор выполнения Задания №2

 

 

 

 

 

 

 

Выбор выполнения Задания №3

 

 

 

 

 

 

 

 

 

 

Выход из СУБД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. Заключение

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

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

  1. Список литературы
  2. Лемашко Е.В., Романчуков В.Г. Прогр?/p>