#include using namespace std; void Sim(int inp) { float s2, eps, n; n = inp; s2 = 0; eps = 0.0001; int mark = 1, k = 0; float s1, x, b, a; b = 8.0; a = 1.0; do { s1 = s2; s2 = 0; for (int i = 2; i < n - 1; i++) { x = i*(b - a) / n; if (mark == 1) { mark = 0; s2 += 4 * (x + x); } else { mark = 1; s2 += 2 * (x + x); } k++; } s2 += a + a + b + b; s2 *= b / (3 * n); n *= 2; } while (abs(s2 - s1) > eps); cout << "Симпсон: " << s2 << endl; cout << "Колиество итераций: " << k << endl; } void Rect(int inp) { int k = 0; float s1, s2, eps, b, a, h, x, n; n = inp; s2 = 0; s1 = s2; eps = 0.0001; b = 8.0; a = 1.0; do { h = (b - a) / n; for (int i = 1; i < n; i++) { x = a + h*i - h / 2.0; s2 += x + x; k++; } s2 *= h; n *= 2; cout << "s2: " << s2 << " s1: " << s1 << " abs(s2 - s1): " << abs(s2 - s1) << " eps: " << eps << endl; } while (abs(s2 - s1) > eps); cout << "Метод треугольников: " << s2 << endl; cout << "Колиество итераций: " << k << endl; } int main() { int n; setlocale(LC_ALL, "RUS"); cin >> n; Sim(n); Rect(n); system("pause"); return 0; }