oop курсовая. Исследование вычислительной эффективности объектноориентированных приложений
Скачать 0.82 Mb.
|
3.2. Определение попадания точки внутрь фигурыВ соответствии с заданием фигура состоит из прямоугольника, из которого вырезаны треугольник , треугольник и треугольник ode. Необходимо сгенерировать внутри прямоугольника точку , а также определить принадлежит такая точка фигуре , если известны координаты точек, определяющих эту фигуру. Пример расположения точек фигуры и точки приведен на рис. 3. Рис. 3. Точки, необходимые для расчётов Уравнение прямой имеет вид: , где . Уравнение прямой имеет вид: , где . Уравнение окружности: . Квадрат расстояния от точки до точки : . Для определения попадания точки внутрь фигуры используется следующий алгоритм: 1) если , то точка принадлежит фигуре, если или ; 2) если , то точка принадлежит фигуре, если и ; 3) если , то точка принадлежит фигуре. 4. ПРОЦЕДУРНОЕ ПРИЛОЖЕНИЕ НА БАЗЕ WPF/C#4.1. Программные средства разработкиПри создании процедурного приложения была использована среда разработки MS Visual Studio 2019. Данная среда разработки имеет удобный интерфейс и поддерживает все элементы, используемые в программе. Для полноценной работы процедурного приложения на базе Windows Presentation Foundation необходимо подключить несколько пространств имён, а именно: System.Collections.Generic – содержит интерфейсы и классы, определяющие универсальные коллекции, которые позволяют пользователям создавать строго типизированные коллекции, например List System.Data - обеспечивает доступ к классам, представляющим архитектуру ADO.NET, позволяющую создавать компоненты, эффективно управляющие данными из нескольких источников данных. Используется для работы объекта DataTable, в котором будут представлены результаты работы программы; System.Diagnostics – предоставляет классы, позволяющие взаимодействовать с системными процессами, журналами событий и счетчиками производительности, в данной программе отвечает за работу таймера выполнения расчётов; System.Windows – предоставляет несколько важных Windows Presentation Foundation (WPF) классов базовых элементов, различные классы, поддерживающие WPF системы свойств и событий логики и другие типы, более широко применяемые в WPF ядре и инфраструктуре. Позволяет использовать объекты Point в программе. 4.2. Логическое проектированиеПри запуске программа должна предлагать на выбор пользователю либо ввести данные вручную, либо решить тестовый пример. На первом этапе создаётся массив точек, который содержит координаты «x» и «y» всех точек базовой фигуры: a, b, c, d, n, e, o, k. Это рассчитывается в методе private void Coordinates (). Следующий этап – расчёт по математическим формулам реальной площади фигуры в методе private double RealSquare(). Это делается для последующего сравнения результатов вычисления через формулы и методом Монте-Карло. Затем при помощи коллекции
И с помощью метода Монте-Карло проверяется вхождение точки в фигуру. Затем рассчитывается площадь фигуры. На рис. 4 представлена диаграмма класса Рис. 4. Диаграмма класса Блок-схема алгоритма работы представлена на рис. 5. Рис. 5. Схемы функций Btn_Start_Click и MonteKarlo |