Решение задачи с прикладным содержанием с применением программирования на языке высокого уровня - Курсовая работа

бесплатно 0
4.5 179
Разработка прикладной программы, позволяющей из заданного множества выбирать точки, являющихся вершинами треугольника с минимальной разностью между количеством точек внутри и вне его. Принципы и особенности компьютерного программирования на языке Pascal.


Аннотация к работе
Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Кубанский государственный университет» Работу выполнил Чабанец Антон ВладимировичДля решения была поставлена задача определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на плоскости. Целью работы является разработка программы, позволяющей из заданного множества точек выбирать тройки точек, удовлетворяющих условию, вычислять радиус и центр.Задача: определить радиус и центр окружности минимального радиуса, проходящей хотя бы через три различные точки заданного множества точек на плоскости. Перебор для первой вершины А возможен только с 1 до n-2 (если n-2 точка является первой вершиной, тогда n-1 - второй, а n - третьей), для второй вершины В перебор возможен со следующей координаты после выбранной в качестве А до n-1, для третьей вершины С - со следующей координаты после выбранной в качестве после В до n.Алгоритм разделим на три основные части: ввод данных, решение задачи и вывод результата. Необходимые промежуточные данные: sa, sb, sc - промежуточные переменные для вычисления центра окружности, minr,minx0,miny0 - переменные для сравнения, нахождения и вывода минимального радиуса и точек центра. Перебор троек точек осуществляется с помощью трех последовательных вложенных циклов for: for i:=1 to n-2 do for j:=i 1 to n-1 do for k:=j 1 to n do begin end; Проверка выбранных точек на принадлежность одной прямой выполним с помощью условного оператора If, в случае если условие верно - треугольник существует и можно вычислять стороны и площадь треугольника: if ((x[3]-x[1])*(y[2]-y[1]))-((y[3]-y[1])*(x[2]-x[1])) 0 Вычисляем длины сторон с помощью формул: Находим полупериметр по формуле: И по формуле Герона вычисляем площадь: В алгоритме это выглядит так: a:=sqrt(((x[j]-x[k])*(x[j]-x[k])) ((y[j]-y[k])*(y[j]-y[k])));BEGIN BEGIN n:=n 1; BEGIN if ((x[3]-x[1])*(y[2]-y[1]))-((y[3]-y[1])*(x[2]-x[1])) 0 then begin a:=sqrt(((x[j]-x[k])*(x[j]-x[k])) ((y[j]-y[k])*(y[j]-y[k]))); BEGIN sa:=((a*a)/(8*s*s)); BEGIN minr:=r;В процессе проведения исследования был проведен анализ условия поставленной задачи, выработан подход к ее решению, разработан алгоритм решения задачи и описан на языке программирования Pascal. Таким образом, были полностью решены поставленные задачи исследования и достигнута его цель - разработана прикладная программа, позволяющая из заданного множества точек выбирать тройки точек, являющихся вершинами треугольника с минимальной разностью между количеством точек внутри и вне треугольника.

План
Содержание

Введение

1. Анализ условия задачи и выработка подхода к ее решению

2. Пошаговая разработка алгоритма

3. Код программы

Заключение

Список использованных источников
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?