Вывести результат интеграла

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
prikolist
Сообщения: 38
Зарегистрирован: 19 ноя 2008, 13:09

Здравствуйте программисты! Подскажите пожалуйста,как вывести результат в этом коде, когда-то брался решать,но не дорешал,подскажите пож.как вывести результат. Вот код:

Код: Выделить всё

#include <vcl>
#include <iostream>
#include <conio>
using namespace std;

double Simpson(double (*Fx)(double))
{
        double I;
        double h;
        double x;
        double a,b;
        int m;
        

        cout << "\n Input integral atributes:\n" << endl;
        cout << "\t-> Enter a = ";
        cin >> a;
 
        cout << "\t-> Enter b = ";
        cin >> b;
 
        cout << "\t-> Enter m = ";
        cin >> m;
 
        h=(b-a)/(m-1);
        x = a;
 
        I = Fx(a) + Fx(b);
        int n=0;
 
        while (n < m-2)
        {
                x = x+h;
                if (n%2==0) I=I+4*Fx(x);
                        else  I = I+2*Fx(x);
                n++;
        }
 
        return I*h/3;
}

int main()
{
system("pause");
}
Мне нужно чтоб вычисляло результат 2 интегралов:
1 -ый интеграл какой вычислить нужно (1/sqrt(0.5*pow(x,2)+1.5))
2 - ой интеграл (x+1)*cos(x*x)
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Код: Выделить всё


double int1(double x)
{
   return 1/sqrt(0.5*pow(x,2)+1.5);
}

double int2(double x)
{
   return (x+1)*cos(x*x);
}


int main()
{
   cout << "Integral 1 = " << Simpson(int1) << endl;
   cout << "Integral 2 = " << Simpson(int2) << end;
   getch();
   return 0;
}
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
prikolist
Сообщения: 38
Зарегистрирован: 19 ноя 2008, 13:09

Спасибо-------------
Ответить