Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- using namespace std;
- double rectl(double a, double b, int n){//объявление функции, для вычисления интеграла методом прямоугольников (левых), a,b - границы интегрирования, n - число шагов
- double dx = (b-a)/n; // определение длины шага интегрирования
- double summ = 0; // переменная, куда будут записываться промежуточные значения интегралла
- for(int i =0; i<n; i++){
- summ+=pow((a+dx*i),2) * dx;// f(a+dx*i) * dx
- }
- return summ;
- }
- double rectr(double a, double b, int n){ // вычисления интеграла методом прямоугольников (правых)
- double dx = (b-a)/n;
- double summ = 0;
- for (int i =1; i<n+1;i++){
- summ+=pow((a+dx*i),2) * dx;
- }
- return summ;
- }
- double trap(double a, double b, int n){
- double dx = (b-a)/n;
- double summ = 0;
- for (int i = 0; i<n;i++){
- summ+= 0.5*dx*(pow(a+dx*i,2) + pow(a+dx*(i+1),2));// dx*(f(x_i-1) + f(x_i))/2
- }
- return summ;
- }
- double rectm(double a, double b, int n){ // вычисления интеграла методом прямоугольников (средних)
- double dx = (b-a)/n;
- double summ = 0;
- for (int i =0; i<n;i++){
- summ+=pow(a+dx*(0.5 + i),2) * dx;// f((x_i-1 - x_i)/2)*dx
- }
- return summ;
- }
- double simps(double a, double b, int n){//вычисление интеграла методом Симпсона
- double dx = (b-a)/n;
- double summ = 0;
- for(int i =0; i<n;i++){
- summ+=(dx/6)*(pow((a+dx*i),2)+4*pow(a+dx*(0.5 + i),2) + pow(a+dx*(i+1),2)) ;//(dx/6)*(f(x_i-1) + 4f(x_i-1 + x_i) + f(x_i))
- }
- }
- int main()
- {
- cout<<"znachenie dlya metoda levych pryamougol'nikov="<<rectl(0,10,5)<<endl;
- cout<<"znachenie dlya metoda pravych pryamougol'nikov="<<rectr(0,10,5)<<endl;
- cout<<"znachenie dlya metoda pryamougol'nikov="<<rectm(0,10,5)<<endl;
- cout<<"anchenie dlya metoda trapeciy="<<trap(0,10,5)<<endl;
- cout<<"znachenie dlya metoda simpsona="<<simps(0,10,5);
- cout<<"znachenie dlya analiticheskogo metoda="<<pow(10,3)/3.0;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement