Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1 семестр / лр 9

.docx
Скачиваний:
31
Добавлен:
16.12.2020
Размер:
105.3 Кб
Скачать

Учреждение образования

«БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра информационных систем и технологий

ОТЧЕТ

по лабораторной работе №9

Решение инженерных задач на основе циклических программ

Выполнила: студентка ФИТ группы № 9 Каленик Алина

Проверила: Пустовалова Наталья Николаевна

Минск 2020

Задание №1 (метод трапеций)

3

1 +x3

a = 1, b = 6

#include<iostream>

using namespace std;

int main()

{

double a = 1, b = 6, n = 200, h, s = 0, x;

h = (b - a) / n;

x = a;

for (x; x < (b - h); x += h)

{

s += h * (1 + pow(x, 3) + 1 + pow((x + h), 3)) / 2;

}

cout << "s = " << s << endl;

}

Задание №2 (метод парабол)

3

1 +x3

a = 1, b = 6

#include<iostream>

using namespace std;

int main()

{

double a = 1, b = 6, n = 200, h, s1 = 0, s2 = 0, x, z;

h = (b - a) / (2*n);

x = a + 2 * h;

for (int i = 1; i < n; i++)

{

s2 += 1 + pow(x, 3);

x += h;

s1+= 1 + pow(x, 3);

x += h;

}

z = (h / 3) * (4 * s1 + 2 * s2 + 1 + pow(a, 3) + 4 * (1 + pow((a + h), 3)) + 1 + pow(b, 3));

cout << "z = " << z << endl;

}

Задание №3 (графический метод отделения корней)

3

x3 + 2x – 1

x³ + 2x – 1 = 0

x³ = 1 – 2x

y = x³

y = 1 – 2x

Из чертежа видно, что графики пересекаются в единственной точке, абсцисса которой находится внутри отрезка [0; 0,5].

Знаки функции на концах этого отрезка разные:

f(0,5) = (0,5)³ + 2 * 0,5 – 1 > 0,

f(0) = 0³ + 2 * 0 – 1 < 0

Значит, данное уравнение имеет один действительный корень, лежащий внутри отрезка [0; 0,5], т. е. a = 0, b = 0,5.

Задание №4 (вычисление корней методом касательных)

3

x3 + 2x – 1

#include <iostream>

using namespace std;

int main()

{

double a = 0, b = 0.5, e = 0.0001, x1, x = 0;

if (((pow(a, 3) + 2 * a - 1) / (3 * pow(a, 2) + 2)) > 0)

x1 = a;

else

x1 = b;

while (abs(x1 - x) > e)

{

x = x1;

x1 = x - (pow(x, 3) + 2 * x - 1) / (3 * pow(x, 2) + 2);

}

cout << x1 << endl;

}

Задание №5 (вычисление корней методом дихотомии)

3

x3 + 2x – 1

#include <iostream>

using namespace std;

int main()

{

double a = 0, b = 0.5, e = 0.0001, x;

while (abs(a - b) > (2 * e))

{

x = (a + b) / 2;

if ((pow(a, 3) + 2 * a - 1) * (pow(x, 3) + 2 * x - 1) <= 0)

b = x;

else

a = x;

}

cout << x << endl;

}

Задание №6 (вычисление корней с помощью приложения Excel)

Соседние файлы в папке 1 семестр