Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
18.07.2023
Размер:
1.27 Mб
Скачать
  1. Разработка программного продукта, реализующего выбор альтернативы по критерию среднего выигрыша

    1. Разработка алгоритма решения задачи

Для решения задачи был разработан алгоритм, представленный в виде блок-схем представленных в приложении В. В представленной блок-схеме «Главное окно» сначала необходимо ввести количество вариантов управления и количество возможных состояний. Нажимается кнопка «Заполнить данные», после чего проверяется проверка введённых данных, если всё введено верно, то заполняются поля для ввода наименования вариантов управления и наименования возможных состояний. После чего нажимается кнопка «Начать анализ». Далее происходит переход в блок-схему «Окно матрицы», в котором высвечивается новое окно для заполнения и вспомогательное окно, информирующее о том, как заполнять данные. В окне для заполнения необходимо ввести коэффициенты для возможных состояний, сумма их должна быть равна 1, а ниже ввести экспертные оценки от 0 до 10, где 0 – это самый неподходящий вариант, а 10 – наиболее подходящий. После чего нажимается кнопка «Расчёт» и если всё введено верно, то происходит расчёт, показанный в блок-схеме на рисунке В.2, в котором происходит заполнения массива эффективности, путём нахождения математического ожидания. Далее в блок-схеме «Вывод» представленной на рисунке В.3 представлен поиск максимального элемента, среди этого массива и выводится значение этого элемента.

    1. Описание программы

Для реализации алгоритма была разработана программа на языке python с использованием кросс-платформенной событийно-ориентированной графической библиотеки tkinter. Выбор языка программирования и графической библиотеки был сделан за счет простоты выполнения поставленной задачи и опыта работы с данными средствами разработки. Программа состоит из одного класса App, в котором существую такие методы, как __init__ для инициализации приложения, в котором инициализируются все важные блоки для дальнейшей работы программы. Метод run необходим для того, чтобы окна в приложении не закрывались, пока пользователь сам не закроет главное окно. На главном окне появляется текст, предлагающий ввести количество вариантов управления и возможные состояний среды. Когда в главном окне пользователь введёт данные и нажмёт на кнопку «Заполнить данные», которая была изначально инициализирована, запускается метод create_data. Данный метод создаёт поля для ввода названий альтернатив и возможных состояний и заменяет кнопку «Заполнить данные» на «Начать анализ», нажав на которую появиться дополнительное окно с матрицей и полями для ввода эффективности среды, сама кнопка пропадёт, а также будет дополнительное окно с информацией о заполнении полей. Создание этого «дочернего» окна происходит в методе create_window. Заполнив данные таблицы необходимо нажать на кнопку «Расчёт», после чего в главном окне появиться запись о том, какой объект получил наивысшую оценку по критерию среднего выигрыша. Расчёты происходят в методе calculation. Для получения данных с таблицы написаны методы get_matrix и get_koef. Так же предусмотрена обработка ошибок ввода.

    1. Тестирование программы

Стартовое окно приложения, представлено на рисунке 5.1. В нем происходит ввод количества вариантов управления системой и количества ситуаций внешней среды.

Рисунок 5.1 – Стартовое окно приложения

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

Рисунок 5.2 – Уведомление об ошибке

Этап заполнения данных об альтернативах и ситуациях во внешней среде происходит в этом же окне, которое изменяет свой размер, заменяет кнопку «Заполнить данные» и выводит новые поле для ввода. Оно представлено на рисунке 5.3

Рисунок 5.3 - Окно ввода вариантов управления и состояний среды

После заполнения данных нажимается кнопка «Начать анализ». Нажав на кнопку, высветится окно, информирующее о том, как заполнять данные в новом окне. Окно информации представлено на рисунке 5.4, а окно для заполнения представлено на рисунке 5.5.

Рисунок 5.4 - Окно с информацией

Рисунок 5.5 – Окно для заполнения

Заполнив данные и нажав на кнопку «Расчёт» в главном окне будет представлен результат работы расчёта, окно с результатом представлено на рисунке 5.6.

Рисунок 5.6 – Окно с результатом вычислений

Пример вывода окна, информирующего об ошибке, представлен на рисунке 5.7.

Рисунок 5.7 – Окно, информирующее об ошибке

Соседние файлы в папке Курсач