Алгоритмы

Алгоритмы. Создание двухуровневого светового меню 5.2. Создание файла данных 3. Чтение файла данных 4. Добавление данных в файл данных 5. Печать сведений о суммарной стоимости продукции заданного вида по каждому предприятию и о среднем выпуске этой продукции одним предприятием. 6. Печать сведений о суммарной стоимости и суммарном выпуске каждой продукции. 7. Печать упорядоченного по суммарной стоимости списка продукции пяти видов 6. Программы 6.1. Создание двухуровневого светового меню Командный файл иерархического меню MainMenu set Talk off set Color to nW Выбор цвета экрана Clear Описание массивов данных меню Declare GenMenu3,2, menuFile3, menuZad3, menuExit2 Задание значений элементов массивов GenMenu1,1 Файл данных GenMenu1,2Работа с файлом данных GenMenu2,1 Задание GenMenu2,2Задания на курсовой проект GenMenu3,1 Выход GenMenu3,2Выход из программы menuFile1Создание menuFile2Чтение menuFile3Добавление menuZad1Задание 1 menuZad2Задание 2 menuZad3Задание 3 menuExit1Выход в Fox menuExit2Выход из Fox Формировние главного меню Do While. T. set Color to grg, grb Установка цвета меню Menu Bar GenMenu, 3 Read Menu Bar to L1, L2 Вывод главного меню на экран Do While L1 0 открыть подменю, если выбран любой пункт главного меню Формирование подменю set Color to grg, grb Установка цвета подменю Menu 1, menuFile, 3,3 Menu 2, menuZad, 3,3 Menu 3, menuExit, 2,2 Read Menu Bar to L1, L2 Вывод меню на экран set Color to nW Возврат к цвету экрана Обработка выбранного пункта меню Do Case Case L10 Exit Выход в панель главного меню Case L11 Do Case Case L21 Выбрано действие Создание нового ФД Do CreateFd Case L22 Выбрано действие Чтение данных Do ReadFd Case L23 Выбрано действие Добавление новых данных Do AddFd EndCase Case L12 Do Case Case L21 Выбрано задание 1 из курсового проекта Do Zad1 Case L22 Выбрано задание 2 из курсового проекта Do Zad2 Case L23 Выбрано задание 3 из курсового проекта Do Zad3 EndCase Case L13 Do Case Case L21 Выбран пункт Выход в Fox Return Case L22 Выбран пункт Выход из Fox Quit EndCase EndCase EndDo EndDo 6.2. Создание файла данных Командный файл CreateFd - создание нового файла данных set Talk off set Status off set Escape off Clear ZagПроцесс создания нового файла данных 4,22 to 4,58 Color uw 3,22 Say Zag Color uw 12,0 Accept Укажите имя создаваемого файла данных to NameFd If LenNameFd 0 Если имя файла не ввели, то делать нечего Изменение заголовка ZagZag NameFd .dbf LenZagIntLenZag 4,Int80-lenZag2 to 4,Int80-lenZag2LenZag Color uw 3,Int80-LenZag2 Say Zag Color uw 14,0 Text Хотите автоматически создать пустую структуру с указанным именем, по заданию курсового проекта ДН EndText Ответ на поставленный вопрос Do While. T. 16,57 Wait to ABC Ожидание нажатия клавиши If ABCн Or ABCд ABCChrAscABC-32 Смена регистра EndIf If ABCН Or ABCД Exit EndIf EndDo Создание ФД If ABCД Автоматическое создание ФД Create Table NameFd KodOrg N3,0, VidProd C20, Volum N4,0, Price N6,2 8,0 set Talk on Display Structure Вывод созданной структуры set Talk off Else Создание ФД с возможностью заполнения полей Create NameFd EndIf EndIf Конец работы 24,0 Wait Для возврата в меню нажмите любую клавишу 24,0 Clear Return 6.3. Чтение файла данных Командный файл ReadFd - чтение файла данных set Talk off set Status off set Escape off Clear 4,27 to 4,54 Color uw 3,27 Say Процесс чтения файла данных Color uw 12,0 Accept Введите имя считываемого файла данных to NameFd If LenNameFd 0 Если имя файла не ввели, то делать нечего Изменение заголовка 3,0 Clear to 5,79 ZagСодержимое файла данных NameFd .dbf LenZagIntLenZag 4,Int80-lenZag2 to 4,Int80-lenZag2LenZag Color uw 3,Int80-LenZag2 Say Zag Color uw Вывод содержимого файла Use NameFd Do While. Not. EOF Цикл вывода порций записей ФД В определенную область экрана 7,0 Display Next 15 If EOF.F. В последнем цикле не нужно переводить указатель и держать паузу Skip Перевод указателя, чтобы новый экран не начинался с последней записи предыдущего экрана 24,0 Wait Нажмите любую клавишу для просмотра следующих 15 записей EndIf EndDo Close DataBases Закрытие ФД EndIf Конец работы 24,0 Wait Для возврата в меню нажмите любую клавишу 24,0 Clear Return 6.4. Добавление данных в файл данных Командный файл AddFd - добавление файла данных set Talk off set Status off set Escape off Clear 4,25 to 4,56 Color uw 3,25 Say Процесс добавления файла данных Color uw 12,0 Accept Введите имя файла данных для добавления данных to NameFd If LenNameFd 0 Если имя файла не ввели, то делать нечего Изменение заголовка 3,0 Clear ZagДобавление данных в файл данных NameFd .dbf LenZagIntLenZag 4,Int80-lenZag2 to 4,Int80-lenZag2LenZag Color uw 3,Int80-LenZag2 Say Zag Color uw Добавление данных в ФД Use NameFd Append Close DataBases Закрытие ФД EndIf Конец работы 24,0 Wait Для возврата в меню нажмите любую клавишу 24,0 Clear Return 6.5. Печать сведений о суммарной стоимости продукции заданного вида по каждому предприятию и о среднем выпуске этой продукции одним предприятием. Командный файл Zad1 - печать сведений о заданной продукции set Talk off set Status off set Escape off Clear 4,18 to 4,62 Color uw 3,18 Say Процесс печати сведений о заданной продукции Color uw 12,0 Accept Введите имя файла данных to NameFd 12,0 Clear 12,0 Accept Введите вид продукции to TypeProd If LenNameFd 0 And LenTypeProd 0 Если имя файла или вид продукции не ввели, то делать нечего Изменение заголовка 3,0 Clear ZagСведения о продукции TypeProd LenZagIntLenZag 4,Int80-lenZag2 to 4,Int80-lenZag2LenZag Color uw 3,Int80-LenZag2 Say Zag Color uw Use NameFd Формирование шапки L 7,12 Say L 8,12 Say Код предприятия Объем выпуска Цена Стоимость 9,12 Say L Row10 Текущий номер строки для вывода данных Do While. Not. EOF If VidProdTypeProd Формирование строки Row,12 Say Row,20 Say KodOrg Row,30 Say Row,36 Say Volum Picture Row,46 Say Row,48 Say Price Picture. Row,55 Say Row,57 Say VolumPrice Picture. Row,67 Say RowRow1 EndIf Skip EndDo Формирование итоговой части таблицы Row,12 Say L RowRow1 Расчет суммарной стоимости Sum VolumPrice For VidProdTypeProd to AllPrice Расчет среднего выпуска Average Volum For VidProdTypeProd to AvVol Row,29 Say Общая суммарная стоимость Row,56 Say AllPrice Picture. Row1,21 Say Средний выпуск одним предприятием Row1,58 Say AvVol Picture Close DataBases Закрытие ФД EndIf Конец работы 24,0 Wait Для возврата в меню нажмите любую клавишу 24,0 Clear Return 6.6. Печать сведений о суммарной стоимости и суммарном выпуске каждой продукции.

Командный файл Zad2 - печать сведений об объемах и стоимости продукции set Talk off set Status off set Escape off Clear 4,15 to 4,64 Color uw 3,15 Say Процесс печати сведений об объемах всей продукции Color uw 12,0 Accept Введите имя файла данных to NameFd 12,0 Clear If LenNameFd 0 Если имя файла не ввели, то печатать нечего Use NameFd Формирование шапки таблицы L 7,10 Say L 8,10 Say Вид продукции Общий объем Суммарная стоимость 9,10 Say L Сортировка данных по виду продукции Index On VidProd to NameFd Создание индексного файла Use NameFd Index NameFd Формирование строк таблицы Row10 Текущий номер строки для вывода данных Do While. Not. EOF VPVidProd RNomRecNo Запомнить номер текущей записи Sum Volum For VidProdVP to AllVol Общий объем Sum VolumPrice For VidProdVP 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 RowRow1 EndDo Формирование итоговой части таблицы Row,10 Say L Close DataBases Закрытие ФД Delete File NameFd .idx Удаление индексного файла EndIf Конец работы 24,0 Wait Для возврата в меню нажмите любую клавишу 24,0 Clear Return 6.7. Печать упорядоченного по суммарной стоимости списка продукции пяти видов Командный файл Zad3 - печать упорядоченных сведений о стоимости продукции set Talk off set Status off set Escape off Clear 4,9 to 4,71 Color uw 3,9 Say Печать сведений о суммарной стоимости продукции по возрастанию Color uw 12,0 Accept Введите имя файла данных to NameFd 12,0 Clear If LenNameFd 0 Если имя файла не ввели, то печатать нечего Use NameFd Формирование шапки таблицы L 7,17 Say L 8,17 Say Вид продукции Суммарная стоимость 9,17 Say L Поиск продукции с наименьшим значением стоимости Store 0 to MinAP, LastAP For I1 to 5 Цикл для пяти видов продукции Do While. Not. EOF Цикл поиска нового минимума VPVidProd Текущий вид продукции RNomRecNo Текущая запись Sum VolumPrice For VidProdVP to AllPrice If AllPrice LastAP If AllPrice MinAP Or MinAP0 MinAPAllPrice MinVPVP EndIf EndIf If RNom RecCount GoTo RNom1 Переход на следующую запись EndIf EndDo Формирование строки таблицы 9I,17 Say 9I,19 Say MinVP 9I,39 Say 9I,46 Say MinAP Picture . 9I,61 Say LastAPMinAP Предыдущее минимальное значение нижняя граница минимальных значений MinAP0 GoTo Top Возобновить просмотр с первой строки Next Формирование итоговой части таблицы 15,17 Say L Close DataBases Закрытие ФД EndIf Конец работы 24,0 Wait Для возврата в меню нажмите любую клавишу 24,0 Clear Return 7.