- •Курсовая работа
- •Пояснительная записка
- •Курсовая работа
- •Задание
- •Аннотация.
- •Введение.
- •Постановка задачи.
- •Расчётные формулы.
- •Расчёт с помощью таблиц, выполненных средствами Microsoft Excel.
- •Получение числовых характеристик линейной зависимости
- •Получение числовых характеристик квадратичной зависимости.
- •Получение числовых характеристик экспоненциальной зависимости.
- •Представление результатов в виде графиков.
- •Решение в Pascal Вычисления в Pascal.
- •Список используемой литературы.
Министерство образования Российской Федерации
Санкт-Петербургский государственный горный университет
Курсовая работа
по дисциплине Информатика
(наименование учебной дисциплины согласно учебному плану)
Пояснительная записка
Тема: Аппроксимация функции методом наименьших квадратов
Автор: студент гр. РГИ-11 _______________ /Ахметшина Р. М. /
(подпись) (Ф.И.О.)
ОЦЕНКА: _____________
Дата: 03.05.12.
ПРОВЕРИЛ
Руководитель проекта _ __ ________________ /_ /
(должность) (подпись) (Ф.И.О.)
Cанкт - Петербург
2011
Министерство образования Российской Федерации |
||
Санкт-Петербургский государственный горный университет |
||
|
|
УТВЕРЖДАЮ Заведующий кафедрой Доц. Маховиков А.Б. /_________ / "___"__________2011г. |
Кафедра Информатики и компьютерной технологии
Курсовая работа
по дисциплине __________________Информатика_______________
(наименование учебной дисциплины согласно учебному плану)
Задание
студенту группы _ ___ ___ ________
(шифр группы) (Ф.И.О.)
1.Тема проекта: Аппроксимация функции методом наименьших квадратов с помощью Pascal и электронных таблиц Microsoft EXCEL.
2.Исходные данные: Вариант №15, табличные данные.
3.Содержание пояснительной записки: Пояснительная записка включает в себя задание на выполнение курсовой работы, титульный лист, аннотацию, оглавление, введение, собственно текст пояснительной записки, заключение, список используемой литературы.
4. Перечень графического материала: Графики функций.
5. Срок сдачи законченного проекта: 01.12.2011 год.
Руководитель проекта _________ _
(должность) (подпись) (Ф.И .О.)
Дата выдачи задания: 22.09.2011 г.
Аннотация.
Пояснительная записка представляет собой отчёт о выполнении курсовой работы. В ней рассматриваются вопросы построения эмпирических формул методом наименьших квадратов (МНК) средствами пакета Microsoft Excel и решение данной задачи в Pascal. По окончании выполнения работы необходимо решить, каким методом задача решается лучше всего, а также определить каким средством это легче сделать: посредством Microsoft Excel или Pascal.
Summary.
The explanatory note represents the report on performance of course work. In it (her) questions of construction of empirical formulas by a method of least squares means of package Microsoft Excel and the decision of the given problem in Pascal considered. Upon termination of performance of work it is necessary to solve, what method the problems solved in the best way end also to define what means it more easy to make: by means of Microsoft Excel or Pascal.
Оглавление.
Аннотация. 3
Введение. 8
Постановка задачи. 9
11
Расчётные формулы. 11
Расчёт с помощью таблиц, выполненных средствами Microsoft Excel. 14
Получение числовых характеристик линейной зависимости 20
Получение числовых характеристик квадратичной зависимости. 20
Получение числовых характеристик экспоненциальной зависимости. 21
Представление результатов в виде графиков. 22
Решение в Pascal 23
Вычисления в Pascal. 23
program Kramer; 23
uses CRT; 23
const 23
n=25; 23
type 23
TArrayXY = array[1..2,1..n] of real; 23
TArray = array[1..n] of real; 23
var 23
SumX,SumY,SumX2,SumXY,SumX3,SumX4,SumX2Y,SumLnY,SumXLnY: real; 23
OPRlin,OPRkvadr,OPRa1,OPRa2,OPRa3:real; 23
a1lin,a2lin,a1kvadr,a2kvadr,a3kvadr,a1exp,a2exp,cexp:real; 23
Xsr,Ysr,S1,S2,S3,Slin,Skvadr,Sexp:real; 23
Kkor,KdetLin,KdetKvadr,KdetExp:real; 23
i:byte; 23
const 23
ArrayXY:TArrayXY=((19.32,18.53,17.34,16.65,16.32,15.84,15.21,14.51,13.62,12.89,12.45,11.84,10.54, 23
9.79,9.41,8.87,8.34,7.79,7.32,6.85,5.46,4.77,4.23,3.45,2.85) , (287.78, 23
243.67,185.77,130.48,107.45,92.34,81.12,40.78,31.43,21.34,17.56,15.54,10.56,11.08,14.29,19.76, 23
25.45,34.64,76.45,82.45,98.97,132.21,188.81,234.87,300.76)); 23
begin 24
ClrScr; 24
SumX:=0.0; 24
SumY:=0.0; 24
SumXY:=0.0; 24
SumX2:=0.0; 24
SumX3:=0.0; 24
SumX4:=0.0; 24
SumX2Y:=0.0; 24
SumLnY:=0.0; 24
SumXLnY:=0.0; 24
{ vicheslenie summ x, y, x*y, x^2, x^3, x^4, (x^2)*y, Ln(y), x*Ln(y) } 24
for i:=1 to n do 24
begin 24
SumX:=SumX+ArrayXY[1,i]; 24
SumY:=SumY+ArrayXY[2,i]; 24
SumXY:=SumXY+ArrayXY[1,i]*ArrayXY[2,i]; 24
SumX2:=SumX2+sqr(ArrayXY[1,i]); 24
SumX3:=SumX3+ArrayXY[1,i]*ArrayXY[1,i]*ArrayXY[1,i]; 24
SumX4:=SumX4+sqr(ArrayXY[1,i])*sqr(ArrayXY[1,i]); 24
SumX2Y:=SumX2Y+sqr(ArrayXY[1,i])*ArrayXY[2,i]; 24
SumLnY:=SumLnY+ln(ArrayXY[2,i]); 24
SumXLnY:=SumXLnY+ArrayXY[1,i]*ln(ArrayXY[2,i]) 24
end; 24
{ {vucheslenie koefficientov } 24
OPRlin:=0.0; 24
a1lin:=0.0; 24
a2lin:=0.0; 24
a1kvadr:=0.0; 24
OPRkvadr:=0.0; 24
a2kvadr:=0.0; 24
a2kvadr:=0.0; 24
a1exp:=0.0; 24
a2exp:=0.0; 24
OPRlin:=n*SumX2-SumX*SumX; 24
a1lin:=(SumX2*SumY-SumX*SumXY)/OPRlin; 25
a2lin:=(n*SumXY-SumX*SumY)/OPRlin; 25
OPRkvadr:=n*SumX2*SumX4+SumX*SumX3*SumX2+SumX2*SumX*SumX3- 25
SumX2*SumX2*SumX2-n*SumX3*SumX3-SumX*SumX*SumX4; 25
a1kvadr:=(SumY*SumX2*SumX4+SumX*SumX2Y*SumX3+SumX2*SumXY*SumX3- 25
SumX2*SumX2*SumX2Y-SumY*SumX3*SumX3-SumX*SumXY*SumX4)/OPRkvadr; 25
a2kvadr:=(n*SumXY*SumX4+SumY*SumX3*SumX2+SumX2*SumX*SumX2Y-SumX2*SumX2*SumXY-n*SumX3*SumX2Y-SumY*SumX*SumX4)/OPRkvadr; 25
a3kvadr:=(n*SumX2*SumX2Y+SumX*SumXY*SumX2+SumY*SumX*SumX3-SumY*SumX2*SumX2-n*SumXY*SumX3-SumX*SumX*SumX2Y)/OPrkvadr; 25
a2exp:=(n*SumXLnY-SumX*SumLnY)/OPRlin; 25
cexp:=(SumX2*SumLnY-SumX*SumXLnY)/OPRlin; 25
a1exp:=exp(cexp); 25
{ vucheslenie sredne arifmiticheskix x i y } 25
Xsr:=SumX/n; 25
Ysr:=SumY/n; 25
S1:=0.0; 25
S2:=0.0; 25
S3:=0.0; 25
Slin:=0.0; 25
Skvadr:=0.0; 25
Sexp:=0.0; 25
Kkor:=0.0; 25
KdetLin:=0.0; 25
KdetKvadr:=0.0; 25
KdetExp:=0.0; 25
for i:=1 to n do 25
begin 25
S1:=S1+(ArrayXY[1,i]-Xsr)*(ArrayXY[2,i]-Ysr); 25
S2:=S2+sqr(ArrayXY[1,i]-Xsr); 25
S3:=S3+sqr(ArrayXY[2,i]-Ysr); 25
Slin:=Slin+sqr(a1lin+a2lin*ArrayXY[1,i]-ArrayXY[2,i]); 25
Skvadr:=Skvadr+sqr(a1kvadr+a2kvadr*ArrayXY[1,i]+a3kvadr*ArrayXY[1,i]*ArrayXY[1,i]-ArrayXY[2,i]); 26
Sexp:=Sexp+sqr(a1exp*exp(a2exp*ArrayXY[1,i])-ArrayXY[2,i]); 26
end; 26
{ vicheslenie koefficientov korelyacii i determinirovannosti } 26
Kkor:=S1/sqrt(S2*S3); 26
KdetLin:=1-Slin/S3; 26
KdetKvadr:=1-Skvadr/S3; 26
KdetExp:=1-Sexp/S3; 26
{ Vivod rezultatov } 26
WriteLn('lineinaya funkciyaя'); 26
WriteLn('a1=',a1lin:8:5); 26
WriteLn('a2=',a2lin:8:5); 26
WriteLn('kvadrati4eskayaя'); 26
WriteLn('a1=',a1kvadr:8:5); 26
WriteLn('a2=',a2kvadr:8:5); 26
WriteLn('a3=',a3kvadr:8:5); 26
WriteLn('exponencialnaya funkciyaя'); 26
WriteLn('a1=',a1exp:8:5); 26
WriteLn('a2=',a2exp:8:5); 26
WriteLn('c=',cexp:8:5); 26
WriteLn('Xcp=',Xsr:8:5); 26
WriteLn('Ycp=',Ysr:8:5); 26
WriteLn('Koefficient korelyacii ',Kkor:8:5); 26
WriteLn('Koefficient determinirovannosti (lineinaya approksimaciya) ',KdetLin:2:5); 26
WriteLn('Koefficient determinirovannosti (kvadrati4eskaya approksimaciya) ',KdetKvadr:2:5); 26
WriteLn('Koefficient determinirovannosti (exponencialnaya approksimaciya) ',KdetExp:2:5); 26
end. 26
27
Рис. 2 Решение в Pascal 27
28
Список используемой литературы. 29