DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт з лабораторної роботи № 2 з дисципліни “Захист інформації”

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
Факультет комп’ютерних наук
Кафедра:
Кафедра захисту інформації

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

Рік:
2009
Тип роботи:
Звіт
Предмет:
Захист інформації
Група:
ІБ – 42
Коротко про документ

Про що ця робота

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

У роботі розглядаються

  • Чисельні методи
  • Нелінійні рівняння
  • Метод половинного ділення
  • Програмування мовою C
  • Обчислювальна похибка
  • Алгоритми пошуку коренів

Зміст і розділи

  1. Мета роботи
  2. Короткі теоретичні відомості
  3. Завдання
  4. Таблиця ідентифікаторів
  5. Блок-схема програми
  6. Текст програми
  7. Результат роботи програми
  8. Висновок
Для кого:Студенти технічних спеціальностей, викладачі
Викладачі:Мороз Л.В.

Ключові поняття

метод поділу проміжку навпілнелінійне рівняннякорінь рівнянняабсолютна похибкавідрізокфункціяітераційний методмова Cалгоритмзмінна

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА, кафедра “Захист інформації”  ЗВІТ З ЛАБОРАТОРНОЇ РОБОТИ № 2 Варіант 8 Мета роботи – ознайомлення з методами уточнення коренів нелінійних рівнянь з одним невідомим. Короткі теоретичні відомості: Метод поділу проміжку навпіл Цей метод є простим і надійним алгоритмом знаходження коренів рівняння (1). Суть методу полягає в тому, що відрізок  ділиться навпіл, тобто вибирається перше наближення кореня /рис.1/.  (3) Якщо , тоді  є коренем рівняння (1).  Рис.1. Якщо , то вибирають той з відрізків  чи , на кінцях якого функція має різні знаки. Одержаний відрізок знову ділять навпіл і т.д. Процес обчислень проводиться доти, доки величина відрізку  не стане меншою від заданої похибки Е. Метод досить стійкий до похибок заокруглень. Але й збігається теж повільно. При збільшенні точності значно зростає об’єм обчислень. Тому на практиці метод часто використовують для грубого визначення початкового наближення до кореня, а пізніше застосовують швидко збіжний ітераційний метод. Алгоритм методу половинного ділення. Задати значення параметрів а, b та граничної абсолютної похибки Е . Обчислити значення функцій  в точці а, тобто обчислити . Поділити проміжок  навпіл, тобто знайти точку  . Перевірити умову ? Якщо так, то перейти до п.7. Якщо добуток , то , в протилежному випадку . Якщо , то перейти до п.3. Надрукувати (вивести) значення . Закінчити виконання програми. Значення Е задається в межах 10 –4(10 –6.  Завдання: Знайти корінь рівняння з граничною абсолютною похибкою Е = 10–4, відокремлений на відрізку [a, b]. Рівняння Відрізок  2x3 + 2x – 1 = 0 [0;1]   Таблиця ідентифікаторів констант, змінних, функцій, використаних у програмі, та їх пояснення: main() Головна функція  f() Функція, що передає задане рівняння  clrscr() Функція очищення екрану  printf() Функція виведення даних  scanf() Функція введення даних  fabs() Функція для знаходження абсолютного значення типу double  cos() Функція обчислення косинуса  a Змінна, початкове значення відрізку  b Змінна, кінцеве значення відрізку  E Змінна, гранична абсолютна похибка  x Змінна, розв’язок рівняння   Блок-схема програми:  Текст програми мовою C: #include<stdio.h> #include<math.h> #include<conio.h> double f(double x); double a,b,E,x; void main(void) { clrscr(); printf("a="); scanf("%lf",&a); printf("b="); scanf("%lf",&b); printf("E="); scanf("%lf",&E); x=(a+b)/2; while (f(x)!=0) { if (f(a)*f(x)>0) a=x; else b=x; x=(a+b)/2; if(fabs(b-a)<=E) break; } printf("x=%lf\n",x); } double f(double x) { return 2*x*x*x+2*x-1; } Результат роботи програми: a=0 b=1 E=0.0001 x=0.423859 Висновок: На цій лабораторній роботі я ознайомився з методами уточнення коренів нелінійних рівнянь з одним невідомим.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!