- •Введение
- •Постановка задачи
- •Разработка технического задания
- •2.1 Анализ вариантов использования программы
- •Потоки событий
- •Основной поток
- •2.2. Альтернативные потоки
- •2.2 Требования к приложениям
- •3.1 Метод Монте-Карло
- •3.2 Определение попадания точки внутрь трапеции
- •Анализ алгоритма решения задачи
- •Настольное приложение wpf
- •4.1 Технология Windows Presentation Foundation
- •4.2 Логическое проектирование приложения
- •4.3 Тестирование приложения
- •5.1 Программные средства для разработки приложения
- •5.2 Логическое проектирование
- •5.2.1 Структура приложения
- •5.2.2 Проектирование приложения.
- •Листинг №1. Определение попадания точки в четырехугольник. HaXe.
- •6. Клиент-Серверное приложение на базе asp.Net
- •6.1 Программные средства разработки приложения
- •6.2 Логическое проектирование Web-сервиса
- •6.3 Логическое проектирование клиентской части
- •6.4 Генерирование прокси-класса
- •6.5 Системные требования
- •Руководство программиста
- •6.7.1 Назначение и условия применения приложения
- •Структура приложения
- •6.8.4 Сообщения оператору
- •6.9 Тестирование приложения
- •Анализ вычислительной эффективности приложений
- •Заключение
- •Приложения
- •9.1 Листинг приложения на базе wpf Файл MainWindow.Xaml
- •Файл MainWindow.Xaml.Cs
- •9.2 Листинг приложения на базе haXe/php Файл Main.Hx
- •Файл Index.Html
- •9.3 Листинг клиент-северного приложения на базе asp.Net Файл Service.Asmx
- •Файл Service.Cs
- •Файл MainWindow.Xaml
- •Файл MainWindow.Xaml.Cs
Постановка задачи
Вариант №1(четырехугольник abce)
В результате выполнения курсовой работы необходимо создать и сравнить по вычислительной эффективности следующие три приложения, решающие одну и ту же задачу приближенного вычисления площади четырехугольника методом Монте-Карло:
настольное приложение, имеющее графический интерфейс пользователя, реализованное на языке WPF
Web приложение на базе скриптов на языке haxe/PHP
Web приложение с компилируемым кодом, написанным на базе технологии ASP.NET(тип Web сервиса - асинхронный, язык Web сервиса – C#, язык клиента – WPF)
Все разработанные приложения должны вычислять площадь четырехугольника abce, (рис. 1) методом Монте-Карло, а также рассчитывать время вычислений и погрешность метода Монте-Карло.
Рис.
1. Четырехугольник abce,
внутри прямоугольника
Исходными данными для всех приложений должны являться координаты 4 точек заданного четырехугольника(a,b,c,e), причем xa<xe<xd.
Приложение должно поддерживать:
Выполнение вычислений по контрольным примерам, заранее заготовленными при разработке
Выполнение вычислений по точкам, координаты которой будут генерироваться случайно, исходя из условий допустимости
Расчет и отображение математической площади, площади, рассчитанной методом Монте-Карло, количество точек, попавших в заданный четырехугольник, общее количество точек, погрешность и время работы
Выполнение вычислений по пользовательским координатам
Каждое
приложение пять раз повторяет эксперимент
и вычисляет площадь четырехугольника
методом Монте-Карло для
,
где N
– количество точек, генерируемых при
вычислении площади методом Монте-Карло.
В каждом эксперименте определяется
относительная погрешность вычисления
площади (в процентах) и его длительность
(в миллисекундах).
После завершения вычислений, приложение выводит на экран таблицу, которая содержит следующую информацию:
Количество точек, для которого проводился эксперимент
Количество точек, попавших в заданный четырехугольник
Площадь, рассчитанная методом Монте-Карло
Погрешность вычислений
Время выполнения вычислений
Также выводится математическая площадь заданного четырехугольника и площадь прямоугольника, описывающего наш четырехугольник.
Разработка технического задания
2.1 Анализ вариантов использования программы
Необходимо разработать программу, которая вычисляет площадь четырехугольника методом Монте-Карло. Программа должна иметь следующую функциональность:
Ввод координат:
контрольные примеры
ввод координат пользователем
случайные числа, исходя из условий допустимости
Произвести расчет по введенным координатам
Выход из программы
При вводе новых координат программа должна автоматически проверять их на корректность, чтобы они удовлетворяли условиям поставленной задачи.
На рис. 2 представлена диаграмма вариантов использования (Use Case – диаграмма), разработанная в соответствии со стандартом UML.
Рис. 2. Диаграмма вариантов использования приложений
Из рис. 2 видно, что при вводе новых значений координат выполняется проверка на их корректность, связь типа <<extend>>, говорит о том, что эта процедура является расширением для действия, к которому указывает стрелка ассоциации. Так же на диаграмме присутствуют связи типа <<include>>, что означает обязательное выполнение действия, к которому направлена стрелка ассоциации. Связь пользователя с программой обозначена как "1 n", это означает, что пользователь может в течение одного сеанса многократно использовать данную программу
Рассмотрим спецификацию вариантов использования "Вычислить площадь четырехугольника" на примере настольного приложения.
Наименование варианта использования: "Вычислить площадь четырехугольника".
Краткое описание: вариант использования инициируется активным субъектом "пользователь" и предлагает возможности выбора из трех доступных действий.
