Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- #include <stdio.h>
- #include <math.h>
- #include <stdlib.h>
- #include <fstream>
- #define N 4
- #define N1 N+1
- #define a 4
- #define b 7
- #define m 10
- using namespace std;
- //////////////
- double function(double x)
- {
- return exp(x) / pow(x, 3) - pow(sin(x), 3);
- }
- int main()
- {
- setlocale(LC_ALL, "RUSSIAN");
- short int i, j;
- double *Xj, *Y, *Yj, *Yjj, *Xsr, *Xuz, h, summa[11], tmp, integral = 0;
- h = (b - a) / 10.;
- Y = new double[11]; Xj = new double[11]; Xsr = new double[10]; Xuz = new double[20]; Yj = new double[10]; Yjj = new double[10];
- tmp = h / 2.;
- cout << "ШАГ:" << h << "\n" << "\t" << "\t" << "\t" << "ТОЧКИ И ЗНАЧЕНИЯ ФУНКЦИИ В ЭТИХ ТОЧКАХ" << "\n";
- cout << "_________________________________________________________________________________________" << endl;
- for (j = 0; j <= 10; j++)
- {
- Xj[j] = a + j*(b - a) / 10.;
- Y[j] = function(Xj[j]);
- cout << "Xj[" << j << "]=" << Xj[j] << "\t" << "Y[" << j << "]=" << Y[j] << endl;
- }
- cout << "\t" << "\t" << "\t" << "СРЕДНИЕ ТОЧКИ НА ИНТЕРВАЛАХ" << "\n";
- cout << "_________________________________________________________________________________________" << endl;
- for (int i = 1; i <= 10; i++)
- {
- Xsr[i] = (Xj[i - 1] + Xj[i]) / 2.;
- cout << "Xsr[" << i << "]=" << Xsr[i] << endl;
- }
- for (i = 1; i <= 10; i++)
- {
- double F, G;
- F = G = NULL;
- F = Xsr[i] - tmp * 0.5773502692;
- G = Xsr[i] + tmp * 0.5773502692;
- summa[i] = function(F) + function(G);
- integral = integral + summa[i];
- }
- integral = integral*tmp;
- cout << "\t" << "\t" << "\t" << "\t" << "ИНТЕГРАЛ" << endl;
- cout << "_________________________________________________________________________________________" << endl;
- cout << "ЗНАЧЕНИЕ ИНТЕГРАЛА:" << integral << endl;
- cout << "\t" << "\t" << "\t" << "\t" << "ПРОИЗВОДНЫЕ" << endl;
- cout << "_________________________________________________________________________________________" << endl;
- cout << "ПЕРВЫЕ:" << "\t" << "\t" << "\t" << "ВТОРЫЕ:" << endl;
- ////////////////////////ПЕРВЫЕ_ПРОИЗВОДНЫЕ/////////////////////////////////////
- for (j = 0; j < 10; j++)
- {
- switch (j)
- {
- case 0:Yj[j] = (Y[j + 1] - Y[j]) / h; break;
- case 9:Yj[j] = (Y[j - 1] - Y[j]) / h; break;
- default:Yj[j] = (Y[j + 1] - Y[j]) / h; break;
- }
- }
- ////////////////////////ВТОРЫЕ_ПРОИЗВОДНЫЕ/////////////////////////////////////
- for (j = 0; j < 9; j++)
- {
- switch (j)
- {
- case 0:Yjj[j] = (Yj[j + 1] - Yj[j]) / h; break;
- case 9:Yjj[j] = (Yj[j - 1] - Yj[j]) / h; break;
- default:Yjj[j] = (Yj[j + 1] - Yj[j]) / h; break;
- }
- cout << "Yj[" << j << "]=" << Yj[j] << "\t" << "\t" << "Yjj[" << j << "]=" << Yjj[j] << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement