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

2 семестр / лр2 / LABA_3_4var

.txt
Скачиваний:
9
Добавлен:
19.09.2019
Размер:
1.31 Кб
Скачать
#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;
double f(double x) {
	return 1/(3*x-7);
}
int main() {
	setlocale(LC_ALL, "Russian");
	double a = 4, b = 5, n = 10, h, Int = 0, i, S = 0, x;
	h = (b - a) / n;
	cout << setw(10) << "x=" << "\t" << setw(10) << "y=" << endl;
	cout << setw(10) << a << "\t" << setw(10) << f(a) << endl;
	for (i = 1; i <= n; i += 1) {
		x = a + i * h;
		S = S + f(x)*h;
		cout.precision(4);
		cout << setw(10) << x << "\t" << setw(10) << f(x) << endl;
	}
	cout << endl << "Метод правых прямоугольников = " << S << endl;
	S = 0;
	for (i = 0; i < n; i += 1) {
		x = a + i * h;
		S = S + f(x)*h;
	}
	cout << "Метод левых прямоугольников = " << S << endl;
	S = 0;
	for (i = 0; i < n; i += 1) {
		x = a + (i + 0.5)*h;
		S = S + f(x)*h;
	}
	cout << "Метод центральных прямоугольников = " << S << endl;
	S = 0;
	for (i = 1; i < n; i += 1) {
		x = a + i * h;
		S = S + f(x);
	}
	S = ((f(a) + f(b)) / 2 + S)*h;
	cout << "Метод трапеция = " << S << endl;
	S = 0;
	for (i = 1; i < n; i += 2) {
		x = a + i * h;
		S = S + f(x);
	}
	for (i = 2; i < (n - 1); i += 2) {
		x = a + i * h;
		Int = Int + f(x);
	}
	S = (h / 3)*(f(a) + f(b) + 4 * S + 2 * Int);
	cout << "Метод Симпсона = " << S << endl;
	return 0;

}
Соседние файлы в папке лр2