Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Описание структуры программы

Анализ задания на курсовую работу

 

В данном случае необходимо решить задачу: разработать программу построения графика экспериментальных точек и полинома регрессии второй степени. Для расчета полинома необходимо применить уравнение полинома второй степени:

 

,

 

где а0, а1, а2 - коэффициенты полинома.

Чтобы рассчитать коэффициенты полинома нужно составить систему линейных уравнений, а затем её решить. Для решения системы применим метод Зейделя:

 

,

 

где ,  cj - элемент матрицы коэффициентов

,  bk - элемент вектора свободных членов.

Эту задачу можно выполнить в выбранной среде программирования Turbo Pascal. Данный язык позволяет реализовать ряд математических, тригонометрических функций.

При написании программы используются функции стандартных модулей CTR, GRAPH и встроенные процедурыOutТextXY, STR, языка TURBO PASCAL. В данной курсовой работе график будет строиться в декартовой системе координат.


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

 

Описание структуры программы

 

Данная программа состоит из процедур Koef, Vector, Matrix, Ozifr, Tochki, Polinom и функции, предназначенных для реализации поставленных целей.

Рассмотрим подробнее:

Работа программы начинается с процедуры Vector, которая составляет вектор свободных членов. В цикле от i:=1 до Nd и во вложенном в него цикле от k:=1 до m по формуле:

Sum:=Sum+exp (Ln(x[k])*(i-1))*y[k]

 

путем обращения к элементам массива данных происходит вычисление i-ого элемента вектора свободных членов.

Далее вызывается процедура Matrix. Она состоит из ряда циклов: от i:=1 до Nd и во вложенных в него циклах от j:=1 до Nd, k:=1 до m составляется матрица коэффициентов.

Расчет элементов матрицы производится по формуле:

Sum:=Sum+exp (Ln(x[k])*(i+j-2)).

 

Затем программа обращается к процедуре Koef, где решается система линейных уравнений, составленная на основе вычисленной матрицы коэффициентов в процедуре Matrix и вектора свободных членов, составленного в процедуре Vector, по методу Зейделя. Корни этой системы будут коэффициентами полинома. После решения системы на экран выводятся коэффициенты полинома и фраза: «Нажмите клавишу Enter». Для продолжения программы необходимо нажать клавишу «Enter». Следом рассчитывается дополнительные значения х, чтобы график полинома был плавной линией.

Инициализируется графический драйвер VGA и режим VGAHI. Далее определяется максимальное значение переменных Ma х X, Ma х Y c помощью встроенных функций GetMaxX, GetMaxY. Следом определяется расстояние между линиями сетки по оси ОХ, О Y:

Rx:=(MaxX-L-P)/(Lin-1);:=(MaxY-V-N)/(Lin-1);

 

потом рассчитывается шаг значений х, у по оси ОХ, О Y

Spx:=(x[m] - x[1])/(Lin-1);:=(y[3] - y[1])/(Lin-1).

 

Затем происходит вывод подписей осей. Устанавливается цвет линий сетки серым S et C olor(L ightgray). В цикле от i:=1 до Lin идет построение линий координатной сетки путём проведения линий.

Line (Round(L+Rx*(i-1)), MaxY-N, Round (L+Rx*(i-1)), V); Line (L, Round (MaxY-N-Ry*(i-1)), MaxX-P, Round (MaxY-N-Ry*(i-1))).

 

Затем вызывается процедура Ozifr, которая производит оцифровку осей. С помощью встроенной процедуры Str выражение

х[1]+ Spx *(i -1)

 

преобразуется в строковый тип и получившиеся значения присваиваются переменной ss. Далее выравнивается текст, центрируется по горизонтали и вертикали. Затем выводится переменная s s с помощью встроенной процедуры OutTextXY в точку

(L+Round (Rx*(i-1)), MaxY-N+Tx).

 

Следом идет выравнивание текста для выводимых значений y. Текст выравнивается вправо относительно горизонтали и центрируется по вертикали. Затем выражение

 

y [1]+ Spy *(i -1):3:1, ss

 

преобразуется с помощью процедуры Str в строковый тип,и получившиеся значения присваиваются переменной s s. Потом значение s s выводятся в точке

 

(L-Tx, MaxY-N-Round (Ry*(i-1)))

 

с помощью встроенной процедуры OutTextXY.

Затем происходит расчет коэффициентов связывающих значение x, y с координатами xx, yy

 

Zx:=(MaxX-L-P)/(x[m] - x[1]);:=(MaxY-V-N)/(y[3] - y[1]).

программа полином регрессия pascal

Далее вызывается процедура Tochki. В цикле от j:=1 до m происходит построение графика экспериментальных точек. Координаты точек вычисляются по формулам

xx[j]:=L+Round((x[j] - x[1])*Zx);[j]:=MaxY-N-Round((y[j] - y[1])*Zy),


после по рассчитанным координатам проводится окружность с центром в точке (xx [ j ], yy [ j ]) и радиусом три пикселя. Потом идет процедура Polinom. В цикле от i:=1 до t происходит расчет точек для построения графика полинома по формулам

xx[i]:=L+Round((xx1 [i] - xx1 [1])*Zx);[i]:=MaxY-N-Round((f (xx1 [i], a0, a1, a2) - y[1])*Zy),

 

где f - функция полинома регрессии второй степени, в неё передаются следующие параметры:

xx 1 [ i ] - точки по которым происходит построение,

a 0, a 1, a 2 - коэффициенты полинома.

Затем проверяется условие

If i=1 Then MoveTo (xx[i], yy[i]) Else LineTo (xx[i], yy[i]),

 

это означает, что если i =1 графический указатель перемещается в точку с координатами (xx [ j ], yy [ j ]), иначе проводится линия из текущего положения графического указателя в точку с координатами (xx [ i ], yy [ i ]). Затем ожидается нажатие клавиши «Enter» и завершение работы программы.

 

Описание работы программы

 

После запуска программы осуществляется инициализация графического режима.

Затем вызываются процедуры Vector и Matrix, в которыхпроисходит составление вектора свободных членов и матрицы коэффициентов системы линейных уравнений.

Далее решение системы линейных уравнений, нахождение коэффициентов полинома в процедуре Koef.

Потом вывод коэффициентов полинома, инструкция к выводу графика на экран монитора и ожидание нажатие клавиши «Enter».

Расчёт дополнительных значений х для построения графика полиномиальной регрессии второй степени.

После расчета происходит инициализация графического режима с разрешением 640×480 пикселей, 16 цветов.

Затем расчёты расстояния между линиями сетки по оси OX и OY и шага значений х по оси OX и значений y по OY.

Потом вывод подписей осей и построение линий сетки.

Далее идет процедура Ozifr,в которой происходит оцифровка осей ОХ и OY, причем по оси ОХ будут откладываться значения х, а по оси OY значения у.

Рассчитываются коэффициенты связывающие значения х, у с координатами.

Затем построение графика точек экспериментальных данных и потом построение графика линии полинома регрессии, с помощью процедур Tochki и Polinom. Ожидание нажатие клавиши «Enter».

 


Блок-схемы алгоритмов

 

Блок-схема функции f


Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...