С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Exоrcist
15 / 15 / 7
Регистрация: 20.02.2014
Сообщений: 86
#1

Метод прямоугольников (трудности по коду) - C++

02.04.2014, 21:42. Просмотров 801. Ответов 2
Метки нет (Все метки)

Добрый день.
У меня есть программка, которая вычисляет интеграл методом прямоугольников - писал ни я сразу скажу - просто пытаюсь разобраться в коде.

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
    static int a = 0; // пределы интегрирования
    static int b = 1;
    static double e = 0.0001;//точность
    static double h = 0.05; //шаг
  
    int amount = 0; 
    double func (double x)
    {
        return Math.cos(x);
    }  
    //метод левых прямоугольников c постоянным шагом
    double LevPrCons(double a, double b, double h)
    { double x = 0; 
      double otv = 0;
    
    for (x = a; x<b; x+=h){
        otv = (otv+func(x));
        
    }
      otv*=h;
      return otv;
    }
    //метод левых прямоугольников c автоматическим шагом
    double LevPrAuto(double a, double b)
    { 
        double otv1 = LevPrCons(a,b,b-a);
        double otv2 = LevPrCons(a,b,(b-a)/2);
        amount++;
        if( Math.abs(otv1-otv2) < e*(b-a)/(b-a) ) return otv2;
   else return LevPrAuto(a,(a+b)/2) + LevPrAuto((a+b)/2,b);
      
    }
объясните, что в ней происходит, особенно я не понял этой строчки:
C++
1
2
3
amount++;
        if( Math.abs(otv1-otv2) < e*(b-a)/(b-a) ) return otv2;
   else return LevPrAuto(a,(a+b)/2) + LevPrAuto((a+b)/2,b);
Заранее спасибо!

Добавлено через 6 часов 27 минут
апну
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.04.2014, 21:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Метод прямоугольников (трудности по коду) (C++):

Метод прямоугольников - C++
Здравствуйте! Есть выражение: y = −2^2 + 3x + 6, y = x + 2. Использовать метод прямоугольников. Для построения прямоугольника...

С++ Метод прямоугольников - C++
Помогите пожалуйсто с задачкой. Метод вроде понятен, но составить прграмму неполучается что-то. Составьте программу находящую значение...

метод прямоугольников - C++
помогите пожалуйста написать код программы. Составить алгоритм и записать программу, которая выполняет итерационной алгоритм метода...

Метод трапеций и прямоугольников - C++
Выручайте.Если до понедельника не сделаю-не поставит препод зачет.Необходимо написать программу на c++/с#.Что бы в ней указать значение...

Метод левых и правых прямоугольников - C++
Здравствуйте, написал функцию для левых прямоугольников для приближенного вычисления определенного интеграла. Помогите написать для правых...

Метод прямоугольников (всё ли правильно?) - C++
Доброго времени суток Задачка такова Использовать метод прямоугольников. Для Построения прямоугольника использовать середину...

2
zss
Модератор
Эксперт С++
6584 / 6146 / 2025
Регистрация: 18.12.2011
Сообщений: 16,023
Завершенные тесты: 1
02.04.2014, 21:49 #2
C++
1
2
3
4
5
6
7
8
9
//метод левых прямоугольников c автоматическим шагом
double LevPrAuto(double a, double b)
{ 
        double otv1 = LevPrCons(a,b,b-a); // считаем площадь прямоугольника с основанием b-a
        double otv2 = LevPrCons(a,b,(b-a)/2);// считаем площадь 2-x прямоугольников с основаниями (b-a)/2
        amount++;
        if( Math.abs(otv1-otv2) < e*(b-a)/(b-a) ) return otv2;// если разница в площадях маленькая - это ответ
   else return LevPrAuto(a,(a+b)/2) + LevPrAuto((a+b)/2,b); // делим интервал на 2 половинки и в каждой считаем площади отдельно
}
1
Exоrcist
15 / 15 / 7
Регистрация: 20.02.2014
Сообщений: 86
09.04.2014, 21:54  [ТС] #3
zss, спасибо большое!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2014, 21:54
Привет! Вот еще темы с ответами:

Найти интеграл, метод прямоугольников - C++
Помогите пожалуйста считает что интеграл равен 0. Считал в маткакде получился ответ 13,963 /// ConsoleApplication3.cpp: определяет...

Метод средних прямоугольников для функции - C++
Напишите пожалуйста формулу средних прямоугольников для функции в c++ , а то уже все облазил и не нашел.

Решение интеграла метод центральных прямоугольников - C++
Здравствуйте товарищи программисты. Прошу помощи с решением задачи. Пишу курсовик и там надо посчитать интеграл на C++ методом центральных...

Метод прямоугольников для решения определенных интегралов - C++
Есть рабочий код метода трапеции для решения определенных интегралов. Формулу нужно заменить для метода прямоугольников. Вот код: ...


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

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

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