Лабораторная работа

«Аппроксимация методом наименьших квадратов функции заданной таблицей на Паскале (Pascal)»

  • 9 страниц
Содержание

1. Постановка задачи 3

2. Схема алгоритма. 4

3. Текст программы на Паскале 5

4. Результаты расчёта 8

5. Вывод 8

6. Список литературы 9

Введение

1. Постановка задачи

Функция y=f(x) задана таблицей 1

Таблица 1

Исходные данные.

Требуется аппроксимация по методу наименьших квадратов функции заданной таблицей 1.

2. Схема алгоритма.

Pascal.

Фрагмент работы

3. Текст программы на Паскале

program apr;

const

n=12;

type

TArrayXY = array[1.2,1.n] of real;

TArray = array[1.n] of real;

var

SumX,SumY,SumX2,SumXY,SumX3,SumX4,SumX2Y,SumLnY,SumXLnY: real;

OPRlin,OPRkvadr,OPRa1,OPRa2,OPRa3:real;

a1lin,a2lin,a1kvadr,a2kvadr,a3kvadr,a1exp,a2exp,cexp:real;

Xsr,Ysr,S1,S2,S3,Slin,Skvadr,Sexp:real;

Kkor,KdetLin,KdetKvadr,KdetExp:real;

i:byte;

const

ArrayXY:TArrayXY=(( begin

SumX:=0.0;

SumY:=0.0;

SumXY:=0.0;

SumX2:=0.0;

SumX3:=0.0;

SumX4:=0.0;

SumX2Y:=0.0;

SumLnY:=0.0;

SumXLnY:=0.0;

{ Вычисление сумм x, y, x*y, x^2, x^3, x^4, (x^2)*y, Ln(y), x*Ln(y) }

for i:=1 to n do

begin

.

.

SumLnY:=SumLnY+ln(ArrayXY[2,i]);

SumXLnY:=SumXLnY+ArrayXY[1,i]*ln(ArrayXY[2,i])

end;

{ Вычисление коэффициентов }

OPRlin:=0.0;

a1lin:=0.0;

a2lin:=0.0;

a1kvadr:=0.0;

OPRkvadr:=0.0;

a2kvadr:=0.0;

a2kvadr:=0.0;

a1exp:=0.0;

a2exp:=0.0;

OPRlin:=n*SumX2-SumX*SumX;

a1lin:=(SumX2*SumY-SumX*SumXY)/OPRlin;

a2lin:=(n*SumXY-SumX*SumY)/OPRlin;

OPRkvadr:=n*SumX2*SumX4+SumX*SumX3*SumX2+SumX2*SumX*SumX3- SumX2*SumX2*SumX2-n*SumX3*SumX3-SumX*SumX*SumX4;

a1kvadr:=(SumY*SumX2*SumX4+SumX*SumX2Y*SumX3+SumX2*SumXY*SumX3- SumX2*SumX2*SumX2Y-SumY*SumX3*SumX3-SumX*SumXY*SumX4)/OPRkvadr;

a2kvadr:=(n*SumXY*SumX4+SumY*SumX3*SumX2+SumX2*SumX*SumX2Y-SumX2*SumX2*SumXY-n*SumX3*SumX2Y-SumY*SumX*SumX4)/OPRkvadr;

a3kvadr:=(n*SumX2*SumX2Y+SumX*SumXY*SumX2+SumY*SumX*SumX3-SumY*SumX2*SumX2-n*SumXY*SumX3-SumX*SumX*SumX2Y)/OPrkvadr;

a2exp:=(n*SumXLnY-SumX*SumLnY)/OPRlin;

cexp:=(SumX2*SumLnY-SumX*SumXLnY)/OPRlin;

a1exp:=exp(cexp);

{ Вычисление средних арифметических x и y }

Xsr:=SumX/n;

Ysr:=SumY/n;

S1:=0.0;

S2:=0.0;

S3:=0.0;

Slin:=0.0;

Skvadr:=0.0;

Sexp:=0.0;

Kkor:=0.0;

KdetLin:=0.0;

KdetKvadr:=0.0;

KdetExp:=0.0;

for i:=1 to n do

begin

S1:=S1+(ArrayXY[1,i]-Xsr)*(ArrayXY[2,i]-Ysr);

S2:=S2+sqr(ArrayXY[1,i]-Xsr);

S3:=S3+sqr(ArrayXY[2,i]-Ysr);

Slin:=Slin+sqr(a1lin+a2lin*ArrayXY[1,i]-ArrayXY[2,i]);

Skvadr:=Skvadr+sqr(a1kvadr+a2kvadr*ArrayXY[1,i]+a3kvadr*ArrayXY[1,i]*ArrayXY[1,i]-ArrayXY[2,i]);

Sexp:=Sexp+sqr(a1exp*exp(a2exp*ArrayXY[1,i])-ArrayXY[2,i]);

end;

{ Вычисление коэффициентов корреляции и детерминированности }

Kkor:=S1/sqrt(S2*S3);

KdetLin:=1-Slin/S3;

KdetKvadr:=1-Skvadr/S3;

KdetExp:=1-Sexp/S3;

{ Вывод результатов }

.

WriteLn('Коэффициент детерминированности (квадратическая аппроксимация) ',KdetKvadr:2:5);

end.

Заключение

4. Результаты расчёта

Квадратичная функция

a1= 9.02747

.

.

Коэффициент корреляции -0.98381

Коэффициент детерминированности (квадратическая аппроксимация) 0.99769

5. Вывод

Программа работает верно. Полученные результаты удовлетворяют требованию.

Список литературы

1. Бородич Ю.С. и др. Паскаль для персональных компьютеров: Справ. Пособие / Ю.С.Бородич, А.Н.Вальвачев, А.И.Кузьмич. – Мн.: Выш. шк.: БФ ГИТМП «НИКА», 1991. – 365 с.

2. Вальвачев А.Н., Крисевич В.С. Программирование на языке Паскаль для персональных ЭВМ ЕС: Справ. пособие. – Мн.: Выш.шк., 1989. – 223 с.: ил.

3. Офицеров Д.В. и др. Программирование на персональных ЭВМ: Практикум: Учеб. Пособие / Д.В.Офицеров, А.Б. Долгий, В.А.Старых; Под общ. ред. Д.В.Офицерова. – Мн.: Выш.шк., 1993. – 256 с.

4. Немнюгин С.А. Turbo Pascal: практикум – СПб: Питер, 200. – 256 с.:ил.

5. Пантелеева З.Т. Графика вычислительных процессов: Учеб.пособие. – М.: Финансы и статистика, 1983. – 167 с., ил.

6. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс. Учебное пособие. – М.: «Нолидж», 1997. – 616 с., ил.

7. Фигурнов В.Э. IBM PC для пользователя. Изд. 7-е, перераб. и доп. – М.: ИНФРА – М, 1997. – 640 с.: ил.

Примечания

Готовые решение задачи на языке Паскаль

К работе прилагается все исходники (Pascal) и отчет (Word)

Покупка готовой работы
Тема: «Аппроксимация методом наименьших квадратов функции заданной таблицей на Паскале (Pascal)»
Раздел: Информатика
Тип: Лабораторная работа
Страниц: 9
Цена: 600 руб.
Нужна похожая работа?
Закажите авторскую работу по вашему заданию.
  • Цены ниже рыночных
  • Удобный личный кабинет
  • Необходимый уровень антиплагиата
  • Прямое общение с исполнителем вашей работы
  • Бесплатные доработки и консультации
  • Минимальные сроки выполнения

Мы уже помогли 24535 студентам

Средний балл наших работ

  • 4.89 из 5
Узнайте стоимость
написания вашей работы
Популярные услуги
Дипломная на заказ

Дипломная работа

от 8000 руб.

срок: от 6 дней

Курсовая на заказ

Курсовая работа

от 1500 руб.

срок: от 3 дней

Отчет по практике на заказ

Отчет по практике

от 1500 руб.

срок: от 2 дней

Контрольная работа на заказ

Контрольная работа

от 100 руб.

срок: от 1 дня

Реферат на заказ

Реферат

от 700 руб.

срок: от 1 дня

682 автора

помогают студентам

23 задания

за последние сутки

10 минут

среднее время отклика