Розв’язання системи рівнянь методом Крамера

Поняття рівнянь регресії та їх практична цінність. Створення програмного продукту на мові об'єктно-орієнтованого програмування з можливістю побудування за експериментальними даними таблиці графіки та обчислювання їх відхилення від експериментальних даних.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 24.12.2011
Размер файла 2,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Міністерство освіти і науки України

Хмельницький НАЦІОНАЛЬНИЙ університет

Кафедра інформаційних технологій проектування

курсова робота

з об'єктно-орієнтованого програмування

Студент групи КН-06-1

Коломійчук Ю.С.

Керівник роботи

Багрій Р. О.

Хмельницький - 2007

ПЛАН

1. Загальні відомості про поставлене завдання.

2. Індивідуальне завдання до курсової роботи.

3. Додаткове завдання .

4. Розраховані коефіцієнти та програмний код реалізації поставленого завдання.

5. Інтерфейс програми, її існуючі форми.

6. Графіки функцій.

7. Реалізовані можливості програми.

Список використаної літератури.

1. Загальні відомості про поставлене завдання

У багатьох випадках при проведенні досліджень виникає необхідність визначити функціональну залежність між певними параметрами досліджуваного явища. Для приблизного визначення функції, що задана в табличній формі за результатами експериментальних вимірів, часто використовують метод найменших квадратів. Процес визначення наближеного вигляду функції за результатами експериментальних досліджень називається апроксимацією. Для цього, звичайно, вибирають апроксимуючу (наближену) функцію та визначають її невідомі сталі коефіцієнти таким чином, щоб відхилення між знайденою функціональною залежністю та експериментальними даними на визначеному інтервалі було найменшим. Взагалі, вплив певного фактора на результат процесу описується рівнянням що називається емпіричною формулою або рівнянням регресії.

Визначення рівнянь регресії має велику практичну цінність. Вони формулюють закон (хоча і приблизний), що зв'язує у вигляді функціональної залежності дві ознаки того чи іншого явища дійсності. Це дозволяє використовувати для дослідження цих явищ розроблені методи математичного аналізу.

Звичайно, від вибору апроксимуючої функції значною мірою залежить наскільки точно ця функція буде описувати досліджуваний процес. У завданні на курсову роботу вказано три функції, за допомогою яких буде проводитись апроксимація. У загальному вигляді ці функції можна представити у такому вигляді:

Завдання полягає у визначенні невідомих сталих коефіцієнтів таким чином, щоб на визначеному інтервалі графік функції найменше відхилявся від значень, визначених експериментально.

2. Індивідуальне завдання до курсової роботи

Дано три типи функціональної залежності :

1. Апроксимуючою є логарифмічна функція Заміною залежність між та зводиться до лінійної Для обчислення значень параметрів та маємо таку систему рівнянь:

(5)

Для визначення даних сум рівняння використаємо такі формули:

; ; ; ;

Для визначення невідомих коефіцієнтів а та b використаємо такі формули:

; ;

2. Апроксимуючою є функція виду Для визначення невідомих коефіцієнтів та необхідно розв'язати систему рівнянь:

(10)

Для визначення даних сум рівняння використаємо такі формули:

; ; ; ; ;

Для визначення невідомих коефіцієнтів а та b використаємо такі формули:

; ;

3. Апроксимуючою є функція виду Для визначення невідомих коефіцієнтів та необхідно розв'язати систему рівнянь:

(14)

Для визначення даних сум рівняння використаємо такі формули:

; ; ; ; ;

; ; ; ;

Для розв'язку цієї системи рівнянь скористаємось методом Крамера, який полягає у тому, що якщо визначник системи не дорівнює нулю, то значення невідомого дорівнює дробу, знаменник якого є визначником системи, а чисельник - визначником, що отримується з визначника системи шляхом заміни коефіцієнтів. Невідомі величини a,b та c визначаються таким чином:

де та - відповідні визначники, що дорівнюють:

Значення визначника системи розраховується таким чином:

Аналогічно обраховуємо значення визначників та ;

3. Додаткове завдання

Для процесу сепарування молока встановити функціональну залежність між температурою молока та вмістом жиру в знежиреному молоці, якщо в дослідах були отримані такі результати:

Т,0С

10

18

20

30

3

40

50

70

Ж, %

0,35

0,30

0,25

0,20

0, 15

0,18

0,34

0,42

Додаткове завдання до курсової роботи :

Передбачити у програмі можливість збільшення числа дослідів.

В програмі дана вимога реалізована таким чином:

r:=strtoint(edit1.text);

stringgrid1.ColCount:=r+1;

При запуску програми потрібно ввести кількість експериментальних дослідів

Після введення кількості дослідів є можливість проводити обрахунки.

4. Розраховані коефіцієнти та програмний код реалізації поставленого завдання

· Розрахунок коефіцієнтів для першої експериментальної функції:

k1:=0; k2:=0; k3:=0; k4:=0; // обнуляємо дані коефіцієнти

for i:=0 to r-1 do // r - кількість дослідів

begin

k1:=k1+ln(x[i]);

k2:=k2+y[i];

k3:=k3+sqr(ln(x[i]));

k4:=k4+(ln(x[i])*y[i]);

end;

{обчислення невідомих коефіцієнтів}

a:=0; b:=0; // обнуляємо дані коефіцієнти

a:=(k3*k2-k1*k4)/(r*k3-sqr(k1));

b:=(r*k4-k1*k2)/(r*k3-sqr(k1));

//побудова даного графіка

For i:=0 to r-1 do begin

Chart1.Series[0].AddXY(x[i],y[i],'', clRed);

Chart1.Series[1].AddXY(x[i],a+b*ln(x[i]),'',clblack);

end;

· Розрахунок коефіцієнтів для другої експериментальної функції:

k1:=0; k2:=0; k3:=0; k4:=0; k5:=0;// обнуляємо коефіцієнти

For i:=1 to r-1 do

Begin

k1:=k1+y[i]*sqr(sin(x[i]));

k2:=k2+sqr(sqr(sin(x[i])));

k3:=k3+(sqr(sin(x[i]))*Tan(x[i]));

k4:=k4+(y[i]*Tan(x[i]));

k5:=k5+sqr(Tan(x[i]));

end;

//обчислення невідомих коефіцієнтів

a1:=0; b1:=0;

a1:=(k1*k5-k3*k4)/(k2*k5-k3*k3);

b1:=(k2*k4-k3*k1)/(k2*k5-k3*k3);

ser2:=0; //обнуляємо значення для обчислення середньоквадратичного відхилення даної функції

for i:=0 to r-1 do

ser2:=ser2+sqr(y[i]-ApproxFunction(a1,b1,x[i]));

//побудова даного графіка

for i:=0 to r do

Chart1.Series[2].AddXY

(x[i],a1*sin(x[i])*sin(x[i])+b1*tan(x[i]),'', clGreen);

i:=1;

· Розрахунок коефіцієнтів для третьої експериментальної функції:

//обнуляємо коофіцієнти

k1:=0; k2:=0; k3:=0; k4:=0; k5:=0; k6:=0; k7:=0;k8:=0;k9:=0;

for i:=0 to r-1 do

begin

k1:=k1+(y[i]*sin(x[i]));

k2:=k2+sqr(sin(x[i]));

k3:=k3+(sin(x[i])*sqr(tan(x[i])));

k4:=k4+(sin(x[i])/(x[i]*x[i]*x[i]));

k5:=k5+(y[i]*sqr(tan(x[i])));

k6:=k6+sqr(sqr(tan(x[i])));

k7:=k7+(sqr(tan(x[i]))/x[i]*x[i]*x[i]);

k8:=k8+y[i]/(x[i]*x[i]*x[i]);

k9:=k9+1/(x[i]*x[i]*x[i]*x[i]*x[i]*x[i]);

end;

d:=k2*k6*k9+k3*k7*k4+k3*k7*k4-k4*k4*k6-k7*k2*k7-k3*k3*k9;

d1:=k1*k6*k9+k7*k5*k4+k3*k7*k8-k6*k4*k8-k7*k1*k7-k3*k5*k9;

d2:=k2*k5*k9+k3*k8*k4+k1*k7*k4-k4*k4*k5-k2*k7*k8-k1*k3*k9;

d3:=k2*k8*k6+k1*k7*k3+k3*k5*k4-k1*k6*k4-k2*k5*k7-k3*k3*k8;

//обчислення невідомих коефіцієнтів

a2:=0; b2:=0; c:=0;//

a2:=d1/d;

b2:=d2/d;

c:=d3/d;

ser3:=0;//обнуляємо значення для обчислення середньоквадратичного відхилення даної функції

for i:=0 to r-1 do begin

ser3:=ser3+sqr(y[i]-Approx2(a2,b2,x[i]));

end;

//побудова даного графіка

for i:=1 to r-1 do

Chart1.Series[3].AddXY(x[i], a*sin(X[i])*sin(X[i])+b*sqr(tan(X[i]))+c/x[i]*x[i]*x[i],'', clblack);

i:=1;

· Загальний вигляд програми

При запуску програми з'являється вікно про програму, яке має вигляд:

7. Реалізовані можливості програми

· Переміщення форми по екрану можливе завдяки

// забезпечення можливості перетягування форми по екрану

ReleaseCapture(); // збір даних мишки і встановлення нормального //оброблення збору даних мишки.

Perform(WM_SYSCOMMAND, $F012, 0);

· Заокруглення контурів форми можливе завдяки

procedure TForm1.FormCreate(Sender: TObject);

var MyRegion: HRGN;

begin

// задаєм параметри заокруглення форми,

MyRegion := CreateRoundRectRgn(0, 0, Width, Height, 50, 50);

SetWindowRgn(Handle, MyRegion, true); // встановлюєм область вікна,

end;

Для того, щоб побачити основні формули, користувачу необхідно і достатньо вибрати в заголовку форми пункт ?

Висновок

об'єктне орієнтоване програмування рівняння регресія

За допомогою даного програмного продукту є можливість: обчислити та побудувати за експериментальними даними таблиці графіки та обчислити їх відхилення від експериментальних даних, занесених до таблиці.

Список використаної літератури

1. Об'єктно-орієнтоване програмування: Методичні вказівки до виконання

курсової роботи для студентів спеціальності 7.080402 - «Інформаційні

технології проектування» напряму підготовки 0804 - «Комп'ютерні науки»

/Укладач к.т.н., доцент Харжевський В. О., Багрій Р. О.- Хмельницький: ХНУ,

2006. - 29 с.

2. Бобровский С. Delphi 5: Учебный курс - СПб.: Питер, 2001. - 640 с.

3. Дарахвелидзе П. Г., Марков Е. П. Программирование в Delphi 7. - СПб.: BHV - Санкт-Петербург, 2003. - 784 с.

4.Мэтчо Дж. и др. Delphi 2 для профессионалов /Пер. с англ. - СПб.: BHV - Санкт-Петербург, 1997. - 784 с.

5.Фаронов В. В. Dephi 5: Учебный курс. - М.: Нолидж, 2001. - 608 с.

Размещено на Allbest.ru


Подобные документы

  • Огляд та аналіз методів розв’язання системи диференціальних рівнянь та вибір методів рішення. Алгоритми методів Ейлера. Вибір методу рішення задачі Коші. Рішення диференціальних рівнянь. Отримання практичних навиків програмування на мові Паскаль.

    курсовая работа [174,3 K], добавлен 06.03.2010

  • Фундаментальні поняття об'єктно-орієнтованого програмування. Система лінійних нерівностей та опуклі багатогранники. Системи лінійних рівнянь лінійної алгебри як частковий випадок систем лінійних обмежень. Використання середовища програмування Delphi7.

    курсовая работа [222,7 K], добавлен 20.05.2015

  • Аналіз сучасного стану технологій програмування. Засоби реалізації об'єктів в мові C++, структура даних і функцій. Розробка програмного продукту - гри "трикутники", з використовуванням моделей, класів і функцій об’єктно-орієнтованого програмування.

    курсовая работа [117,8 K], добавлен 14.03.2013

  • Задача лінійного програмування. Розв’язання задачі геометричним методом. Приведення системи рівнянь до канонічного вигляду. Розв’язання симплекс-методом. Розв’язок двоїстої задачі. Задача цілочислового програмування і дробово-лінійного програм.

    контрольная работа [385,2 K], добавлен 04.06.2009

  • Розв’язання системи лінійних та нелінійних рівнянь у програмі MathCAD. Матричний метод розв'язання системи рівнянь. Користування панеллю інструментів Математика (Math) для реалізації розрахунків в системі MathCAD. Обчислення ітераційним методом.

    контрольная работа [1023,4 K], добавлен 08.04.2011

  • Концепції об'єктно-орієнтованого програмування. Методи створення класів. Доступ до методів базового класу. Структура даних, функції. Розробка додатку на основі діалогових вікон, програми меню. Засоби розробки програмного забезпечення мовами Java та С++.

    курсовая работа [502,5 K], добавлен 01.04.2016

  • Розв’язання нелінійних алгебраїчних рівнянь методом хорд. Опис структури програмного проекту та алгоритмів розв’язання задачі. Розробка та виконання тестового прикладу. Інші математичні способи знаходження коренів рівнянь, та опис виконаної програми.

    курсовая работа [4,1 M], добавлен 28.09.2010

  • Принципи об'єктно-орієнтованого підходу. Розробка програмного комплексу з використанням цього алгоритму і користувальницьких класів на мові програмування С++. Реалізація простого відкритого успадкування. Тестування працездатності системи класів.

    курсовая работа [98,0 K], добавлен 06.05.2014

  • Розв’язання нелінійних алгебраїчних рівнянь методом дихотомії. Вирішення задачі знаходження коренів рівняння. Розробка алгоритму розв’язання задачі і тестового прикладу. Блок-схеми алгоритмів основних функцій. Інструкція користувача програмою мовою С++.

    курсовая работа [2,0 M], добавлен 24.09.2010

  • Розробка програмного забезпечення для розв'язку системи лінійних рівнянь за формулами Крамера, головні особливості мови Turbo Pascal. Методи розв'язування задачі, архітектура програми та її опис. Контрольний приклад та результат машинного експерименту.

    курсовая работа [47,7 K], добавлен 23.04.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.