Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра АСУ
Звіт
Лабораторна робота № 7
«Інтерполяційна схема Ейткена»
з дисципліни:
«Чисельні методи»
Варіант №9
Мета роботи: Засвоїти теоретичний матеріалі методи апроксимації функцій, набути практичні навики знаходження наближених значень функцій.
Завдання
Користуючись таблицею значень cos(x), xє[0.75k, 0.8k] з кроком h=0.01. Знайти наближене значення cos(x) при x=0.775, де k-списковий номер студента.
Результати обчислень подати таблично.
Код програми
#include <iostream>
#include <cmath>
#include <locale>
using namespace std;
double ms[6][7];
double h=0.01, x=0.775;
void Init ()
{
for (int i=0; i<6; i++) ms[0][i]=(0.7509+i*h);
for (int i=0; i<6; i++) ms[1][i]=cos(ms[0][i]);
for (int i=0; i<6; i++) ms[2][i]=ms[0][i]-x;
for (int i=1; i<6; i++) ms[3][i]=(1/(ms[0][i]-ms[0][0]))*( ms[1][i-1]*(ms[0][i]-x)-ms[1][i]*(ms[0][0]-x) );
for (int i=2; i<6; i++) ms[4][i]=(1/(ms[0][i]-ms[0][0]))*( ms[3][i-1]*(ms[0][i]-x)-ms[3][i]*(ms[0][0]-x) );
for (int i=3; i<6; i++) ms[5][i]=(1/(ms[0][i]-ms[0][0]))*( ms[4][i-1]*(ms[0][i]-x)-ms[4][i]*(ms[0][0]-x) );
for (int i=4; i<6; i++) ms[6][i]=(1/(ms[0][i]-ms[0][0]))*( ms[5][i-1]*(ms[0][i]-x)-ms[5][i]*(ms[0][0]-x) );
}
double GetV ()
{
for (int i=1; i<6; i++)
if ( ( (ms[2][i-1]>0) && (ms[2][i]<0) ) || ( (ms[2][i-1]<0) && (ms[2][i]>0) ) ){
if (abs(ms[2][i-1])<abs(ms[2][i])) return ms[2+i-1][i-1];
else return ms[2+i][i];
}
}
void main ()
{
setlocale (LC_ALL, "");
Init ();
cout<<"Xk\tF(Xk)\tXk-X\tL1\tL2\tL3\tL4"<<endl<<endl;
for (int i=0; i<6; i++){
for (int j=0; j<7; j++) {cout.precision(5); cout<<ms[j][i]<<"\t"; }
cout<<endl;
}
cout<<endl<<endl<<"Наближене значення cos(0.775) = ";
cout<<GetV();
cin.get();
}
Приклад виконання програми
Висновок: на даній роботі була створена програма для знаходження наближеного розвязку функції за інтерполяційною схемою Ейткена. Знаходилось наближене значення функції cos(x) у точці х=0.775, на проміжку [0.7509, 0.8009]. На скріншоті виконання програми зображена отримана таблиця. Як бачимо найбільша точність (|Хк-Х|=0.05) у точках х=0.7709, х=0.7809, обираємо другу точку і з таблиці отримуємо наближене значення функції cos(0.775) = 0.71613.
Абсолютна похибка:
Δ=0,71613-0,7144=0,00173
Відносна похибка:
0,00173/0,7144*100%=0,25%
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!