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

Рекурсия (вычисления интеграла) - C++

Восстановить пароль Регистрация
 
Elanso
0 / 0 / 0
Регистрация: 30.11.2010
Сообщений: 41
14.05.2012, 15:10     Рекурсия (вычисления интеграла) #1
Есть программа которая вычисляет интеграл методом трапеции и Симпсона, надо усовершенствовать код чтобы функции вычисляли интеграл рекуррентным способом(сделать их рекурсивными)
Код:
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
#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
#include <math.h>
#include <conio.h>
using namespace std;
//Определяем константы
#define a 0
#define b 10
#define d b-a
#define h 0.01
//Подинтегральная ф-ция
double F(double p){return exp(-p);}
//Метод трапеций
void Trap(){
    double n = 0, S = 0, S1 = 0, x = a;
    do {
        S1 = S;
        S = F(a) + F(b);
        while(x < b-h){
            x += h;
            S += 2 * F(x);  //сумма площадей трапеций
            n++;
        }
        S *= h/2;           
    }
    while(fabs(S-S1) < h);
    cout<<"S = "<<S<<" was calculated after "<<n<<" iterations."<<endl;
}
//Метод Симпсона
void Simp(){
int n = 0;
double x=a, S=0;
  while(x < b-h){
    S += F(x) + 4 * F(x+h) + F(x+2*h); 
    x += 2*h;
    n ++;
  }
  cout<<"S = "<<(h/3)*S<<" was calculated after "<<n<<" iterations"<<endl;
  }
//Главная ф-ция
void main(){
    cout<<"Method Trapeciy:"<<endl;
    Trap();
    cout<<"\nMethod Simpsona:"<<endl;
    Simp();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2012, 15:10     Рекурсия (вычисления интеграла)
Посмотрите здесь:

C++ Методы вычисления определенного интеграла.
C++ Вычисления интеграла
Прямая рекурсия, вычисление значения определенного интеграла C++
C++ Создать класс вычисления интеграла на отрезке
C++ Есть ли встроенные функции для вычисления интеграла?
Численные методы для вычисления определенного интеграла C++
C++ Разобрать пример вычисления интеграла
Напишите пожалуйста програму вычисления интеграла sin x C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 04:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru