Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.69
Xorus
0 / 0 / 0
Регистрация: 03.11.2009
Сообщений: 10
#1

Вычисление интеграла - C++

24.11.2009, 18:38. Просмотров 1678. Ответов 1
Метки нет (Все метки)

Необходимо вычислить интеграл (сам интеграл задан функцией, например Functoin) методом правых прямоугольников, воспользовавшись критерием двойного пересчета с точностью E=10e–6.
При этом вычисление интеграла оформить в виде функций.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2009, 18:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычисление интеграла (C++):

вычисление интеграла - C++
Даны вещественные числа a, b. Значения функции f(x)=(x+1)2√lg x; a=2; b=10; записать в массив. Вычислить значение интеграла, используя: ...

Вычисление интеграла - C++
помогите пожалуйста я вообще не знаю как сделать интеграл

Вычисление интеграла - C++
вычислить интеграл \int_{0}^{6}\frac{exp^sqrt{\frac{6-x}{6+x}}}{(6+x)*\sqrt{36-x^2}} помогите с кодом вычисления данного...

Вычисление интеграла - C++
Считаю интеграл на промедутке от -1 до 3... Интеграл a*a*a*a. Точность вычисления 0.00001... Код выполняется 10-12 секунд. Это нормально...

Вычисление интеграла - C++
задача такая Вычислить с точностью\varepsilon интеграл ,где y=f(x) - прямая проходящая через точки A(c,d) и B - точку минимума ...

Вычисление определенного интеграла - C++
Здравствуйте. Нашел код для вычисления определенного интеграла двумя методами, а как туда всунуть свой интеграл не знаю. Буду благодарен за...

1
Xorus
0 / 0 / 0
Регистрация: 03.11.2009
Сообщений: 10
25.11.2009, 00:31  [ТС] #2
PS: Нашёл похожую фунцию, но тут методом левых прямоугольников.
Если кто нибудь понимает это подскажите как перейти на правые прямоугольники, я вообще не понимаю эти методы

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 #include <iostream.h>
#include <math.h>
                     //прототип функции вычисления интеграла по критерию двойного пересчетa
void Vych_Int_lpram(double a, double b, double eps, double (*pf) (double), double *I,  int *k);
                   //прототип функции вычисления суммы по методу левых прямоугольников
void Sum (double a, double b, double h, double (*pf) (double), double *S);
double  f1 (double);              
 
int main ()
{ double  a, b, eps;               //a-b отрезок,  eps точность
   double Int;                        //значение интеграла
    int K_iter;                        //количество итераций
  
  cout << "Input a, b, eps\n";
  cin >> a >> b >> eps; 
 Vych_Int_lpram(a, b, eps, &f1, &Int, &K_iter);      //вычисление интеграла для f1
  cout << "Integral    for f1  =" << Int << "    K_iter= "<< K_iter << endl;
return 0;
}
 
void Vych_Int_lpram(double a, double b, double eps, double (*pf) (double), double *I,  int *k)
 {int n=20;                      //количествo разбиений 
 double h=(b-a)/n;          //шаг интегрирования
 double S1=0, S2=0;      // значения сумм с шагом h и с шагом h/2
 
 Sum (a, b, h, pf, &S1);   // процесса двойного пересчетa
 *k=0;
 do
          {  S2= S1;       
      n *=2;                      //увеличение количества отрезков разбиения и        
      h=(b-a)/n;                //уменьшение шага интегрирования в 2 раза
      Sum (a, b, h, pf, &S1);        //повторное вычисление суммы в S1 
      *k +=1;
 }while (fabs(S1-S2) > eps) ;  
 *I=S1;                    
}
 
void Sum(double a, double b, double h, double (*pf) (double), double *S)
 { double x, sum;
    x=a; 
    sum=0;
    while (x<b) {
             sum=sum+(*pf)(x);    //накопление суммы высот
         x=x+h;
     }  
    *S=h*sum;                                     //вычисление площади
   }
 
 double  f1 (double x)
{ return cos(x)/exp(0.333333*log(x));}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2009, 00:31
Привет! Вот еще темы с ответами:

Вычисление интеграла и табуляция - C++
Доброго времени суток! Написал программу в делфи и паскале, дошла очередь до С++ , а как писать там я не понимаю! Почитал статьи про...

Вычисление определенного интеграла. - C++
Добрый вечер! Не могли бы Вы помочь с моей задачей. Нужно вычислить определенный интеграл (x*x)+(5*x), интервал от 0 до 10, методом...

Вычисление определенного интеграла! - C++
Помогите плиз с с++! С заданной погрешностью вычислить интеграл!

Вычисление определенного интеграла си++ - C++
Составить программу вычисления определенного инте-грала с помощью метода Гаусса и Симпсона #include&lt;iostream&gt; #include&lt;math.h&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru