Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Чисельні методи

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКНІ
Факультет:
КН
Кафедра:
АСУ

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Чисельні методи аналізу автоматичних систем

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» Інститут ІКНІ Кафедра АСУ ЗВІТ До лабораторної роботи № 2 На тему: «Метод Штурма відокремлення коренів» З дисципліни: «Чисельні методи» Львів – 2018 Мета роботи: вивчити і засвоїти методи відокремлення коренів. Варіант № 3  Відокремити кожен з коренів рівняння f(x)=0, використовуючи метод Штурма з точністю не менше  . Отриманий результат перевірити за допомогою графіка функції. Протокол виконання / Код програми #include <iostream> using namespace std; const int C = 11; int Interval[C] = { -2,-1,0,1,2,3,4,5,6,7,8 }; class A { double ms[C][6]; public: double F(double x) { return x * x*x*x - 3 * x*x*x + 2 * x - 7; } double F0(double x) { return 4 * x * x*x - 9*x*x + 2; } double F1(double x) { return 1.6*x * x - 1.5*x + 6.6; } double F2(double x) { return 20.5*x – 23.3; } double F3(double x) { return -1; } void show(); }; int main() { setlocale(LC_ALL, ""); A obj; obj.show(); cin.get(); return 0; } void A::show() { double buf; cout.width(2); cout << "x"; cout.width(10); cout << "f"; cout.width(10); cout << "f0"; cout.width(10); cout << "f1"; cout.width(10); cout << "f2"; cout.width(10); cout << "f3" << endl << endl; for (int ii = 0; ii<C; ii++) { cout.width(2); cout << Interval[ii]; cout.width(10); buf = F(Interval[ii]); cout << buf; if (buf>0) ms[ii][0] = 1; else ms[ii][0] = 0; cout.width(10); buf = F0(Interval[ii]); cout << buf; if (buf>0) ms[ii][1] = 1; else ms[ii][1] = 0; cout.width(10); buf = F1(Interval[ii]); cout << buf; if (buf>0) ms[ii][2] = 1; else ms[ii][2] = 0; cout.width(10); buf = F2(Interval[ii]); cout << buf; if (buf>0) ms[ii][3] = 1; else ms[ii][3] = 0; cout.width(10); buf = F3(Interval[ii]); cout << buf; if (buf>0) ms[ii][4] = 1; else ms[ii][4] = 0; buf = 0; for (int j = 0; j<4; j++) if ((ms[ii][j] == 0 && ms[ii][j + 1] == 1) || (ms[ii][j] == 1 && ms[ii][j + 1] == 0)) buf++; ms[ii][5] = buf; cout << endl; } cout << endl << endl; cout.width(2);cout << "x"; cout.width(10);cout << "f"; cout.width(10);cout << "f0"; cout.width(10);cout << "f1"; cout.width(10);cout << "f2"; cout.width(10);cout << "f3"; cout.width(10);cout << "W(x)" << endl << endl; for (int i = 0; i<C; i++) { cout.width(2); cout << Interval[i]; for (int j = 0; j <= 5; j++) { cout.width(10); if (j == 5) cout << ms[i][j]; else { if (ms[i][j] == 0) cout << "-"; else cout << "+"; } } cout << endl; } cout << endl << endl; cout << "Дiйснi коренi знаходяться у промiжках:" << endl << endl; int i = 1; for (int ii = 0; ii<C - 1; ii++) { if (ms[ii][5] != ms[ii + 1][5]) { cout.width(15); cout << Interval[ii] << " < x" << i + 1 << " < " << Interval[ii + 1] << endl; } } } Графік функції / Висновок Під час виконання лабораторної роботи я вивчив і засвоїв методи відокремлення коренів.
Антиботан аватар за замовчуванням

08.11.2018 17:11

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

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

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини