Методом наименьших квадратов вычислить параметры для заданной группы точек на плоскости - C#

Узнай цену своей работы

Формулировка задачи:

Программисты, пожалуйста помогите!!! через 2 недели сдать надо, я незнаю как делать(( Нам необходимо создать программу, которая методом наименьших квадратов вычисляет параметры для заданной группы точек на плоскости. Программа позволяет выбрать текстовый файл с точками и задать их с помощью мыши. Затем строится линия тренда по этим точкам и отображается на графике. Точки задаются только числами в диапазоне ( от 0 до 100). Параметры линии тренда выводятся программой. Измененные или добавленные координаты можно сохранить в текстовый файл.

Решение задачи: «Методом наименьших квадратов вычислить параметры для заданной группы точек на плоскости»

textual
Листинг программы
function GetTrend( ATrendType: TTrendType; APoints: IPointsList): TFunc<double, Double>;
var
    a,b: Double;
    pnt: TPoint_Float;
    X_, Y_, XY_, XX_: Double; // суммы, соответственно, x, y, xy, x^2
    n: Integer;
begin
    X_ := 0;
    Y_ := 0;
    XY_ := 0;
    XX_ := 0;
    n := APoints.Count;
    case ATrendType of
      ttLinear:
        begin
            for pnt in APoints do
            begin
                X_ := X_ + pnt.x;
                Y_ := Y_ + pnt.y;
                XY_ := XY_ + pnt.x * pnt.y;
                XX_ := XX_ + Sqr(pnt.x);
            end;
            a := (n * XY_ - X_ * Y_) / (n * XX_ - Sqr(X_));
            b := (Y_ - a * X_) / n;
            result := function (x: Double): double
                      begin
                        result := a * x + b;
                      end;
        end;
    end;
end;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы