close

Вход

Забыли?

вход по аккаунту

?

отчет (17)

код для вставкиСкачать
СОДЕРЖАНИЕ
1 АНАЛИТИЧЕСКИЙ ОБЗОР ОБЛАСТИ СТАТИСТИЧЕСКИХ МЕТОДОВ ОЦЕНКИ4
1.1 Статистические методы оценки4
1.2 Постановка задачи5
2 ОПИСАНИЕ МЕТОДА6
3 АЛГОРИТМИЧЕСКОЕ КОНСТРУИРОВАНИЕ7
4 ПРОГРАММНОЕ КОНСТРУИРОВАНИЕ9
5 ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРИМЕНТЫ11
ЗАКЛЮЧЕНИЕ13
6 СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ14
ПРИЛОЖЕНИЕ А ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА ПРОГРАММНОЕ СРЕДСТВО15
ПРИЛОЖЕНИЕ Б РУКОВОДСТВО СИСТЕМНОГО ПРОГРАММИСТА19
ПРИЛОЖЕНИЕ В РУКОВОДСТВО ПРОГРАММИСТА22
ПРИЛОЖЕНИЕ Г РУКОВОДСТВО ОПЕРАТОРА24
ПРИЛОЖЕНИЕ Д ТЕКСТЫ ИСХОДНЫХ МОДУЛЕЙ27
1 АНАЛИТИЧЕСКИЙ ОБЗОР ОБЛАСТИ СТАТИСТИЧЕСКИХ
МЕТОДОВ ОЦЕНКИ
1.1 Статистические методы оценки
Статистика - отрасль знаний, в которой излагаются общие вопросы сбора, измерения и анализа массовых статистических (количественных или качественных) данных; изучение количественной стороны массовых общественных явлений в числовой форме [1].
Статистика разрабатывает специальную методологию исследования и обработки материалов: массовые статистические наблюдения, метод группировок, средних величин, индексов, балансовый метод, метод графических изображений и другие методы анализа статистических данных[5].
Статистические методы - методы анализа статистических данных. Статистические методы анализа данных применяются практически во всех областях деятельности человека. Их используют всегда, когда необходимо получить и обосновать какие-либо суждения о группе (объектов или субъектов) с некоторой внутренней неоднородностью. Выделяют три вида научной и прикладной деятельности в области статистических методов анализа данных (по степени специфичности методов, сопряженной с погруженностью в конкретные проблемы):
а) разработка и исследование методов общего назначения, без учета специфики области применения;
б) разработка и исследование статистических моделей реальных явлений и процессов в соответствии с потребностями той или иной области деятельности;
в) применение статистических методов и моделей для статистического анализа конкретных данных.
По мере движения от а) к в) сужается широта области применения конкретного статистического метода, но при этом повышается его значение для анализа конкретной ситуации. Если работам вида а) соответствуют научные результаты, значимость которых оценивается по общенаучным критериям, то для работ вида в) основное - успешное решение конкретных задач той или иной области применения (техники и технологии, экономики, социологии, медицины и др.). Работы вида б) занимают промежуточное положение [5].
В данной работе рассматривается статистический метод оценки входящий в группу в). Ставится задача разработки программного средства способного оценить матрицу динамических показателей производственного предприятия с помощью статистического метода.
1.2 Постановка задачи
Разработать программное средство, позволяющее определять работоспособность производственного предприятия по задаваемым параметрам.
Значение параметров должны вводится в рабочую матрицу. Должна присутствовать возможность изменения размерности матрицы. Максимальная размерность матрицы 20х20. Элементы рабочей матрицы должны храниться в двумерном массиве вещественных чисел.
Предусмотреть возможность ввода значения коэффициента отклонения от среднего значения параметров предприятия в процентах. Значение коэффициента является вещественным числом.
В качестве результата проверки работоспособности производственного предприятия выводить одно из семи изображений, соответствующих рассчитанному состоянию предприятия. В качестве изображений состояний работоспособности предприятия использовать изображения представленные на рисунке 1.1 от наилучшего до наихудшего (слева на право).
Рисунок 1.1 - Изображения состояний работоспособности предприятия
2 ОПИСАНИЕ МЕТОДА
Метод, с помощью которого определяется состояние работоспособности производственного предприятия заключается в следующем. Имеется рабочая матрица. В нее заносятся значения параметров предприятия для исследуемых моментов времени. Задается значения коэффициента отклонения от среднего значения параметров предприятия в процентах. После этого каждая строка рабочей матрицы предприятия исследуется на принадлежность "хорошим" или "плохим" строкам. То есть, строка является хорошей, если все значения в столбцах для указанных моментов времени попадают в диапазон задаваемый коэффициентом отклонения от среднего значения по строке (Например: ср.зн = 300, коэфф.откл. = 10%, тогда строка "хорошая", если все ее значения строки находятся в диапазоне от 270 до 330).
Следующим шагом является определение отношения количества плохих строк к количеству всех строк рабочей матрицы. Результатом этого отношения является число от 0 до 1, следовательно отрезок от 0 до 1 необходимо разделить на количество частей, равное количеству имеющихся состояний работоспособности предприятия. Номер состояния работоспособности определяется исходя из того, в какой по счету интервал попало отношение плохих строк ко всем строкам.
3 АЛГОРИТМИЧЕСКОЕ КОНСТРУИРОВАНИЕ
На основе выбранного метода определения состояния работоспособности производственного предприятия, были разработаны следующие алгоритмы.
Общая схема алгоритма разрабатываемого программного средства представлена на рисунке 3.1.
Рисунок 3.1 - Общая схема алгоритма программного средства.
Схема алгоритма расчета номера состояния работоспособности предприятия представлена на рисунке 3.2, где k - коэффициент отклонения от среднего значения параметров, Rows - количество рядов рабочей матрицы предприятия, Columns - количество столбцов рабочей матрицы предприятия, Vsr - среднее значение параметра текущей строки, Vij - значение параметра в i-ой cтроке и j-ом столбце, BadRows - количество "плохих" строк, res - номер состояния работоспособности предприятия.
Рисунок 3.2 - Схема алгоритма расчета состояния
работоспособности предприятия
4 ПРОГРАММНОЕ КОНСТРУИРОВАНИЕ
Для написания разрабатываемого программного средства выбран язык программирования Delphi. Это императивный, структурированный, объектно-ориентированный язык программирования.
Для решения поставленных перед программным средством задач необходим графический интерфейс, основанный на стандартных элементах управления предоставляемых языком Delphi.
Так как в задании требуется вводить двумерный массив значений, то для этих целей удобно воспользоваться компонентом-таблицей TStringGrid. Размерность таблицы не будет превышать 20х20, следовательно для нее можно выделить фиксированную область на главной форме программы (стандартный компонент TForm).
Также необходимы поля для ввода размерности рабочей матрицы предприятия и поле для ввода значения коэффициента отклонения от среднего значения параметров. С этой задачей вполне справится компонент TEdit (поле ввода). Для того чтобы пользователь программного средства не ввел размерность рабочей матрицы больше чем 20х20, используем компонент TUpDown (переключатель), который в связки с компонентом TEdit позволяет ограничить диапазон вводимых значений.
Для того чтобы определить состояние работоспособности предприятия по введенным данным воспользуемся компонентом TButton - кнопка, по нажатию которого будет производится расчет номера состояния. А для вывода изображения с рассчитанным номером состояния используем компонент TImage.
Таким образом, из перечисленных выше компонент строится интерфейс разрабатываемого программного средства - рисунок 4.1.
Рисунок 4.1 - Интерфейс разрабатываемого программного средства.
Для реализации алгоритма расчета номера состояния работоспособности предприятия (рисунок 3.2) создадим функцию getStateNumber. Она будет взаимодействовать с глобальными переменными целочисленного типа Rows - количество рядов рабочей матрицы, Cols - количество столбцов рабочей матрицы, и koeff - вещественного типа, коэффициент отклонения от среднего значения параметров. Входные параметры отсутствуют, в качестве результата данная функция должна возвращать целое число - номер состояния работоспособности, который в свою очередь соответствует номеру изображения.
Для определения принадлежности диапазону значения параметра создадим функцию-предикат inRange, которая возвращает значение логического типа, отвечая на вопрос принадлежит ли переданное ей значение интервалу или нет. Входными параметрами функции являются вещественное v - проверяемое значение параметра, vs - среднее значение параметра, и k - коэффициент отклонения от среднего значения параметров.
Файлы изображений состояний работоспособности предприятия расположим в поддиректории с названием "states", которая находится в директории с исполняемым файлом разрабатываемого программного средства. Имена файлов изображений имеют следующий вид "state_<i>.bmp", где i - номер состояния работоспособности предприятия.
5 ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРЕМЕНТЫ
Программное средство запускается файлом Main.exe. После запуска программного средства появляется главное окно программы (рисунок 5.1).
Рисунок 5.1 - Главное окно программы после запуска
После заполнения строк-параметров значениями для проверки наилучшего, среднего и наихудшего состояний предприятия, задания коэффициента отклонения и нажатия кнопки "Рассчитать" главное окно программы примет вид представленный на рисунках 5.2-5.4.
Рисунок 5.2 - Главное окно программ. Предприятие находится в наилучшем состоянии
Рисунок 5.3 - Главное окно программ. Предприятие находится в среднем состоянии
Рисунок 5.4 - Главное окно программ. Предприятие находится в наихудшем состоянии
ЗАКЛЮЧЕНИЕ
В ходе курсовой работы был проведен анализ применения статистических методов оценки данных. Были освоены основные принципы и способы статистической оценки динамических показателей. На основании изученных материалов разработано техническое задание на создание программного средства (приложение А), позволяющего определить состояние работоспособности производственного предприятия по задаваемым параметрам.
После проведения необходимых этапов включающих в себя алгоритмическое конструирование, программное конструирование, написание текстов программных модулей (приложение Д), проведение вычислительных экспериментов было создано приложение "Main.exe", реализующее все функции указанные в техническом задании. Для разработанного программного средства написаны руководства системного программиста, программиста и оператора (приложения Б-Г).
6 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Малая советская энциклопедия. - М.: Советская энциклопедия, 1960.
2. Орлов А.И. Прикладная статистика. Учебник. - М.: Экзамен, 2006.
3. Р. А. Шмойлова. Теория статистики: Учебник - М.: Финансы и статистика, 2005.
4. Харченко Л-П. Статистика: Учебное пособие. - М.: ИНФРА-М.2003.
5. [Электронный ресурс] - URL: http://traditio-ru.org/wiki/Статистические_методы
6. [Электронный ресурс] - URL: http://www.codingrus.ru/readarticle.php?article_id=1838
7. [Электронный ресурс] - URL: http://delphi-faq.ru/palitra-komponentov-delphi/vizyalnie-biblioteki-vcl/sobytiya-delphi-sobytiya-vizualnyx-komponentov.html
8. [Электронный ресурс] - URL: http://www.delphi-manual.ru/stringgrid.php
9. [Электронный ресурс] - URL: http://www.delphibasics.ru/Try.php
10. [Электронный ресурс] - URL: http://pascal.toom.su
11. [Электронный ресурс] - URL: http://www.programmersforum.ru/showthread.php?t=36663
12. [Электронный ресурс] - URL: http://smile.jaff.ru/emotion-smiles.html
ПРИЛОЖЕНИЕ А ТЕХНИЧЕСКОЕ ЗАДАНИЕ
НА ПРОГРАММНОЕ СРЕДСТВО
"СОГЛАСОВАНО"
Руководитель:
____________ Коробейников А. П.
"____" ____________ 2013 г. "УТВЕРЖДЕНО"
зав. кафедрой "ПОВТ и АС"
_____________ Нейдорф Р. А.
"____" ____________ 2013 г.
П.А.1 Введение
П.А.1.1 Наименование программного изделия: "Main1.exe".
П.А.1.2 Область применения
Программное средство применяется в области задач, связанных с определением работоспособности производственного предприятия.
П.А.2 Основания для разработки
П.А.2.1 Документ, на основании которого ведётся разработка
Работа ведётся на основании задания на курсовую работу по дисциплине "Технология разработки программного обеспечения".
П.А.2.2 Организация, утвердившая этот документ, и дата его утверждения
Задание утверждено на заседании кафедры ПОВТ и АС и выдано преподавателем кафедры Коробейниковым А. П.
П.А.2.3 Наименование темы разработки
Наименование темы разработки - "Программа оценки матрицы динамических показателей статистическими методами с визуализацией результата".
П.А.3 Назначение разработки
П.А.3.1 Функциональное назначение
Определение работоспособности предприятия.
П.А.3.2 Эксплуатационное назначение
Эксплуатация в качестве специального ПО для контроля работоспособности предприятия.
П.А.4 Требования к программному средству
П.А.4.1 Требования к функциональным характеристикам
Функции программного средства:
* определение размерности рабочей матрицы предприятия "Параметры-Значения";
* определение параметров и их значений рабочей матрицы предприятия;
* определение коэффициента отклонения от среднего значения параметров предприятия;
* определение работоспособности предприятия.
Входные данные:
* размерность рабочей матрицы предприятия;
* значения параметров рабочей матрицы предприятия;
* значение коэффициента отклонения от среднего значения параметров предприятия в процентах;
Выходные данные:
изображение, определяющий работоспособность предприятия.
П.А.4.2 Требования к надежности
Выполнение требований ГОСТ 51188-98. Защита информации. Испытания программных средств на наличие компьютерных вирусов.
Программное средство должно работать с рабочей матрицей предприятия и указанным коэффициентом отклонения в соответствии с алгоритмом функционирования, выдавать сообщения об ошибках при неверно заданных исходных данных.
П.А.4.3 Условия эксплуатации
Условия эксплуатации программы совпадают с условиями эксплуатации ПЭВМ IBM PC и совместимых с ними ПК.
П.А.4.4 Требования к составу и параметрам технических средств
Необходимо наличие IBM PC - совместимого ПК с графическим адаптером EGA (VGA).
Процессор: Intel 500 МГц.
ОЗУ: 128 Мб.
Свободное место на жестком диске: 2 Мб.
П.А.4.5 Требования к информационной и программной совместимости
Программное средство должно работать под ОС MS Windows XP (или более поздней версией). Базовый язык программирования - Delphi.
П.А.4.6 Требования к маркировке и упаковке
Требования к маркировке и упаковке не предъявлены.
П.А.4.7 Требования к транспортированию и хранению
Требования к транспортированию и хранению не предъявлены.
П.А.4.8 Специальные требования
Специальные требования не предъявлены.
П.А.5 Требования к программной документации
Программная документация должна состоять из следующих разделов:
* техническое задание по ГОСТ 19.201;
* руководство системного программиста по ГОСТ 19.503;
* руководство программиста по ГОСТ 19.504;
* руководство оператора по ГОСТ 19.505;
* исходный текст программного средства по ГОСТ 19.401.
П.А.6 Технико-экономические показатели
Никаких технико-экономических требований к программе не предъявлено.
П.А.7 Стадии разработки
Этапы разработки программного средства:
* изучение тематики и методов решения(10 часов);
* разработка алгоритмов (7 часа);
* реализация разработанных алгоритмов (20 часов);
* тестирование программы (10 часов);
* составление программной документации (35 часов).
Срок реализации программного средства и программной документации: к 06.12.2013.
П.А.8 Порядок контроля и приёмки
Контроль и приемка разработки осуществляется преподавателем на основе испытаний контрольно-отладочных примеров. При этом проверяется выполнение всех функций программы. Необходимо представить отчет в печатном виде.
Разработал: студент группы ВИ52 Вакуленко А.И.
Тема: "Оценка матрицы динамических показателей статистическими методами с визуализацией результата".
Дата _________________Подпись _________________
ПРИЛОЖЕНИЕ Б РУКОВОДСТВО СИСТЕМНОГО ПРОГРАММИСТА
П.Б.1 Общие сведения о программном средстве
Программное средство Main1 применяется в области задач, связанных с определением состояния работоспособности производственного предприятия.
В качестве метода решения поставленной перед программным средством задачи используется метод, основанный на обработке вводимых значений параметров предприятия соответствующих определенным моментам времени, а также вводимого коэффициента допустимого отклонения от среднего значения параметров.
После обработки введенных данных программа выдает в качестве результата одно из семи изображений, характеризующих состояния работоспособности предприятия.
Программное средство разработано для запуска на IBM PC совместимых ПК, с предустановленной на них ОС MS Windows версии XP и выше. Для корректной работы необходимо наличие графического адаптером EGA(VGA), процессора Intel 500 МГц, объем ОЗУ не ниже 128 Мб, наличие свободного места на жестком диске не менее 2 Мб.
П.Б.2 Структура программного средства
Основной модуль программного средства - MainProgram.pas, содержит в себе все функции реализующие алгоритм решения поставленной задачи. Все модули подключаемые внутри MainProgram.pas являются стандартными модулями, предоставляемыми средой разработки Embarcadero Delphi.
В директории с исполняемым файлом находится поддиректория, в которой содержатся изображения характеризующие состояния работоспособности предприятия.
П.Б.3 Настройка программного средства
Программное средство не требует настройки, после установки готово к использованию. Установка осуществляется по средствам копирования исполняемого файла программного средства Main.exe и поддиректории "states" с ее содержимым.
П.Б.4 Проверка программного средства
Для проверки программного средства в качестве рабочей матрицы необходимо взять матрицы размерностью 7х5, коэффициент отклонения от среднего значения параметров задать 0. В рабочую матрицу занести значения из таблицы П.Б.4.1, для проверки определения наилучшего состояния работоспособности.
Размерность: 7х5
Коэффициента К(%): 0.
Таблица П.Б.4.1 - Значения рабочей матрицы для наилучшего состояния
55555555555555555555555555555555555 После нажатия кнопки "Рассчитать" главное окно программы должно иметь вид представленный на рисунке П.Б.4.1.
Рисунок П.Б.4.1 - Главное окно программы после ввода
проверочных данных для наилучшего состояния работоспособности.
Для проверки определения наихудшего состояния работоспособности в рабочей матрицы необходимо заменить значения одного любого столбца нулями (таблица П.Б.4.2).
Размерность: 7х5
Коэффициента К(%): 0.
Таблица П.Б.4.2 - Значения рабочей матрицы для наихудшего состояния
50555505555055550555505555055550555 После изменения значений рабочей матрицы и нажатия кнопки "Рассчитать" главное окно программы будет иметь вид представленный на рисунке П.Б.4.2.
Рисунок П.Б.4.1 - Главное окно программы после ввода проверочных
данных для наихудшего состояния работоспособности.
Для проверки определения остальных состояний работоспособности необходимо уменьшить количество строк содержащих нулевые значения, вернув им старое значение "5". Таким образом, чем меньше будет строк с нулевым столбцом, тем лучшее состояние работоспособности будет определяться.
П.Б.5 Сообщения системному администратору
Если в ходе работы программы появляется сообщение: "'<text>' is not a valid floating point value.", где <text> - строка любой длинны (в том числе нулевой), значит были введены некорректные данные и система не может их преобразовать в вещественное число.
В этом случае следует проверить введенное значение коэффициента отклонения от среднего значения параметров, а также значения элементов рабочей матрицы. Исправить некорректные значения, и снова попробовать рассчитать состояние работоспособности.
ПРИЛОЖЕНИЕ В РУКОВОДСТВО ПРОГРАММИСТА
П.В.1 Назначение и условия применения программного средства
Программное средство Main применяется в области задач, связанных с определением состояния работоспособности производственного предприятия.
В качестве метода решения поставленной перед программным средством задачи используется метод, основанный на обработке вводимых значений параметров предприятия соответствующих определенным моментам времени, а также вводимого коэффициента допустимого отклонения от среднего значения параметров.
После обработки введенных данных программа выдает в качестве результата одно из семи изображений, характеризующих состояния работоспособности предприятия.
Программное средство разработано для запуска на IBM PC совместимых ПК, с предустановленной на них ОС MS Windows версии XP и выше. Для корректной работы необходимо наличие графического адаптером EGA(VGA), процессора Intel 500 МГц, объем ОЗУ не ниже 128 Мб, наличие свободного места на жестком диске не менее 2 Мб.
П.В.2 Характеристики программного средства
Основной модуль программного средства - MainProgram.pas, содержит в себе все функции реализующие алгоритм решения поставленной задачи. Все модули подключаемые внутри MainProgram.pas являются стандартными модулями, предоставляемыми средой разработки Embarcadero Delphi.
В директории с исполняемым файлом находится поддиректория "states", в которой содержатся изображения характеризующие состояния работоспособности предприятия. Все изображения имеют имена следующего вида "state_<i>.bmp", где i - номер состояния работоспособности от 1 до 7. В ходе работы программы рассчитывается номер изображения, которое будет выведено на главном окне программы.
П.В.3 Обращение к программному средству
Программное средство не требует настройки, после установки готово к использованию. Установка осуществляется копированием исполняемого файла программного средства Main.exe и поддиректории "states" с ее содержимым.
Запуск программного средства производится запуском исполняемого файла Main.exe. Все необходимые входные данные вводятся с помощью клавиатуры и мыши. Данные вводимые с клавиатуры являются вещественными числами, дробная часть отделяется от целой с помощью запятой.
П.В.4 Структура программного средства
Для хранения значений количества строк и столбцов рабочей матрицы используются глобальные переменные Rows и Cols типа integer, соответственно. Для хранения значения коэффициента отклонения от среднего значения параметров также используется глобальная перменная - koeff типа real.
Реализована функция определения принадлежности значения диапазону - function inRange(v,vs: Real; k: Real): Boolean.
Входные параметры: v - проверяемое значение, vs - среднее значение, от которого рассчитывается диапазон, k - коэффициент отклонения от среднего значения, принадлежит диапозону [0..1].
Выходные параметры: значение функции - true, если проверяемое значение принадлежит интервалу, иначе false.
Реализована функция определения номера состояния работоспособности предприятия.
Входные параметры: нет, взаимодействует с глобальными параметрами - Rows, Cols, koeff.
Выходные параметры: значение функции - номер состояния работоспособности.
Для хранения значений рабочей матрицы используется предоставляемый компонентом TStringGrid двумерный массив строк.
ПРИЛОЖЕНИЕ Г РУКОВОДСТВО ОПЕРАТОРА
П.Г.1 Назначение программного средства
Программное средство Main применяется в области задач, связанных с определением состояния работоспособности производственного предприятия.
В качестве метода решения поставленной перед программным средством задачи используется метод, основанный на обработке вводимых значений параметров предприятия соответствующих определенным моментам времени, а также вводимого коэффициента допустимого отклонения от среднего значения параметров.
После обработки введенных данных программа выдает в качестве результата одно из семи изображений, характеризующих состояния работоспособности предприятия.
П.Г.2 Условия выполнения программного средства
Программное средство разработано для запуска на IBM PC совместимых ПК, с предустановленной на них ОС MS Windows версии XP и выше. Для корректной работы необходимо наличие графического адаптером EGA(VGA), процессора Intel 500 МГц, объем ОЗУ не ниже 128 Мб, наличие свободного места на жестком диске не менее 2 Мб.
П.Г.3 Выполнение программы
Для того чтобы определить состояние работоспособности производственного предприятия необходимо запустить исполняемый файл Main.exe. После этого на экране появится главное окно программы представленное на рисунке П.Г.3.1.
Рисунок П.Г.3.1 - Главное окно программы после запуска
Теперь необходимо задать размерность рабочей матрицы используя переключатели, ввести коэффициент отклонения от среднего значения параметров К в процентах, и заполнить рабочую матрицу значениями параметров предприятия.
После этого нажать кнопку "Рассчитать", на главном окне программы появится изображение характеризующее состояние работоспособности предприятия по шкале от 1 до 7, где 1 - наилучшее состояние, 7 - наихудшее.
Изображения, соответствующие состояниям 1-7 (слева направо) работоспособности, представлены на рисунке П.Г.3.2.
Рисунок П.Г.3.2 - Изображения характеризующие состояния работоспособности предприятия
Контрольный пример:
Размерность: 7х5
Коэффициент К(%): 10
Рабочая матрица:
56,555554,05555555555555555555555555555 В результате главное окно программы примет вид представленный на рисунке П.Г.3.3.
Рисунок П.Г.3.1 - Главное окно программы после выполнения
контрольного примера
П.Г.4 Сообщения оператору
Если в ходе работы программы появляется сообщение: "'<text>' is not a valid floating point value.", где <text> - строка любой длинны (в том числе нулевой), значит были введены некорректные данные.
В этом случае следует проверить введенное значение коэффициента отклонения от среднего значения параметров, а также значения элементов рабочей матрицы. Исправить некорректные значения, и снова попробовать рассчитать состояние работоспособности.
ПРИЛОЖЕНИЕ Д ТЕКСТЫ ИСХОДНЫХ МОДУЛЕЙ
unit MainProgram;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ExtCtrls, Grids;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Label3: TLabel;
Edit2: TEdit;
Label4: TLabel;
Edit3: TEdit;
UpDown1: TUpDown;
UpDown2: TUpDown;
StringGrid1: TStringGrid;
Button1: TButton;
Image1: TImage;
Label5: TLabel;
procedure FormCreate(Sender: TObject);
procedure UpDown1ChangingEx(Sender: TObject; var AllowChange: Boolean;
NewValue: SmallInt; Direction: TUpDownDirection);
procedure UpDown2ChangingEx(Sender: TObject; var AllowChange: Boolean;
NewValue: SmallInt; Direction: TUpDownDirection);
procedure Button1Click(Sender: TObject);
end;
var
Form1: TForm1;
Rows, Cols: integer;
koeff: real;
function getStateNumber(): integer;
function inRange(v,vs: Real; k: Real): boolean;
implementation
{$R *.dfm}
{ функция определения принадлежности значения диапазону }
{ входные параметры: }
{ v - проверяемое значение}
{ vs - среднее значение, от которого рассчитывается }
{ диапазон}
{ k - коэффициент отклонения от среднего значения, }
{ принадлежит диапозону [0..1]}
{ выходные параметры: }
{ значение функции - true, если проверяемое значение }
{ попало в интервал, }
{ false, иначе }
function inRange(v,vs: Real; k: Real): boolean;
begin
result := ((1-k)*vs <= v) AND (v <= (1+k)*vs);
end;
{ функция определения номера состояния работоспособности }
{ входные параметры: }
{ нет, взаимодействует с глобальными параметрами: }
{ Rows, Cols, koeff}
{ выходные параметры: }
{ значение функции - номер состояния }
function getStateNumber(): integer;
var
i, j, res: Integer;
Vji, vsr: Real;
badcnt: integer;
allcnt: integer;
begin
res := 0; badcnt := 0;
allcnt := Rows;
for i := 0 to Rows - 1 do
begin
vsr := 0;
for j := 0 to Cols - 1 do
vsr := vsr + StrToFloat(Form1.StringGrid1.Cells[j,i]);
vsr := vsr / Cols;
for j := 0 to Cols - 1 do
begin
Vji := StrToFloat(Form1.StringGrid1.Cells[j,i]);
if NOT inRange(Vji,vsr,koeff) then
begin
inc(badcnt);
break;
end;
end;
end;
if badcnt<>allcnt then
res := trunc((badcnt/allcnt)*7)+1
else
res := 7;
Result := res;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
koeff := StrToFloat(Edit1.Text)/100;
try
Image1.Picture.Bitmap.
LoadFromFile('states\state_' + IntToStr(getStateNumber()) + '.bmp');
finally
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Caption := '';
Rows := UpDown1.Position;
Cols := UpDown2.Position;
StringGrid1.RowCount := Rows;
StringGrid1.ColCount := Cols;
koeff := 0.0;
Edit1.Text := FloatToStr(koeff);
Image1.Center := true;
Image1.Stretch := true;
Image1.Proportional := true;
end;
{Изменение количества рядов}
procedure TForm1.UpDown1ChangingEx(Sender: TObject; var AllowChange: Boolean;
NewValue: SmallInt; Direction: TUpDownDirection);
begin
AllowChange := false;
if (NewValue>=1)AND(NewValue<=20) then
begin
AllowChange := true;
Rows := NewValue;
StringGrid1.RowCount := Rows;
end;
end;
{Изменение количества столбцов}
procedure TForm1.UpDown2ChangingEx(Sender: TObject; var AllowChange: Boolean;
NewValue: SmallInt; Direction: TUpDownDirection);
begin
AllowChange := false;
if (NewValue>=1)AND(NewValue<=20) then
begin
AllowChange := true;
Cols := NewValue;
StringGrid1.ColCount := Cols;
end;
end;
end.
3
Документ
Категория
Рефераты
Просмотров
68
Размер файла
1 032 Кб
Теги
отчет
1/--страниц
Пожаловаться на содержимое документа