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

Массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Стеки http://www.cyberforum.ru/cpp-beginners/thread407261.html
Создать класс типа - стек. Функции-члены вставляют элемент в стек, вытаскивают элемент из стека. Проверяют вершину стека. Помогите пожалуйста с этой задачей, а то я не могу разобраться, заранее...
C++ Функции, которые получают строку и int Здравствуйте! Пожалуйста, помогите написать: -функцию, которая получает значение int, -функцию, которая получает строку -создать отдельные классы, отвечающие за ввод и вывод; -функции,... http://www.cyberforum.ru/cpp-beginners/thread407246.html
C++ Составить блок-схему
Добрый день, помогите пожалуйста составить блок-схему, примеров не нашёл, весь нэт перерыл. Спасибо! #include <iostream> #include <string> #include <algorithm> int main() {
Комметарии и строковые константы C++
Подскажите ,пожалуйста,попался вопрос :"Комметарии и строковые константы могут начинаться подключаемом файле и продолжаться в исходном файле". нужен фрагмент кода к примеру.
C++ Переделать случайное заполнение матрицы http://www.cyberforum.ru/cpp-beginners/thread407226.html
Приветсвую! Помогите пожалуйста переделать код (а именно заполнение матрицы). Нужно чтобы каждый элемент матрицы случайно заполнялся, а не как сейчас (случайно, но они одинаковые все) Вот код: ...
C++ Таймер в консольном приложении Подскажите, как сделать чтобы консольное приложение было постоянно запущено и раз в 1 минуту выполняло одну из функций? Добавлено через 4 минуты Кажется, сам нашел - Sleep (delay in sec) :-| подробнее

Показать сообщение отдельно
YouDoItWrong
46 / 46 / 7
Регистрация: 29.10.2011
Сообщений: 154
14.12.2011, 18:55
Ну вот пример методом прямоугольников.
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <cmath>
 
 
using namespace std;
 
double F(double x) {
    //Функция
}
 
double Integral(vector<double> vec) {
    double h = vec[vec.size()-1] - vec[0] / 10000000;
    return std::accumulate(vec.begin(), vec.end() - 1, 0) * h;
}
 
int main() {
    vector<double> _func;
    for(int i = 0; i <10000000; i++) {
        //тут заполняеться вектор _func (_func.push_back(value))
    }
    cout << Integral(_func) << endl;
    return 0;
}
Ну а все остальное по анологии, просто изменить функцию Integral. Вот формулы:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
0. Формула прямоугольников
   h = (b-a)/N;
   Int (f(x),a,b) = h * (f(x[0])+f(x[1])+...+f(x[N]))
 
1. Формула средних
   h = (b-a)/N;
   Int (f(x),a,b) = h * (f(x[1/2])+f(x[1+1/2])+...+f(x[N-1/2]))
   Выражение "f(x[i+1/2])" означает "значение функции f(x) в точке (x[i]+x[i+1])/2"
 
2. Формула трапеций
   h = (b-a)/N;
   Int (f(x),a,b) = h * (1/2*f(x[0])+f(x[1])+f(x[2])+...+f(x[N-1])+
                       +1/2*f(x[N]))
 
3. Формула Симпсона (N должно быть четным)
   h = (b-a)/N;
   Int (f(x),a,b) = h/3 * (f(x[0])+4*f(x[1])+2*f(x[2])+4*f(x[3])+
                    +2*f(x[4])+...+2*f(x[N-2])+4*f(x[N-1])+f(x[N]))
 
4. Формула Эйлера (в предположении, что известны значения производной
   f'(x) в узлах x[0] и x[N])
   h = (b-a)/N;
   Int (f(x),a,b) = h * (1/2*f(x[0])+f(x[1])+f(x[2])+...+f(x[N-1])+
                    +1/2*f(x[N])) + 1/12*h^2*(f'(x[0])-f'(x[N]))
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru