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

Определенный интеграл - C++

Восстановить пароль Регистрация
 
wolf1396
5 / 5 / 0
Регистрация: 07.05.2013
Сообщений: 192
14.05.2013, 21:16     Определенный интеграл #1
Нужно написать программу вычисляющую интеграл от cos(x), используя циклы for и while (do..while)

Можете написать, как это делать в С++ (любым из 2 циклов) ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zombiecomatoz
13 / 13 / 1
Регистрация: 06.05.2013
Сообщений: 52
14.05.2013, 21:51     Определенный интеграл #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
#include "stdafx.h"
#include "math.h"
double F(double x)
{
    return sin(x);
}
double Integral(double a, double b)
{
    double dx = 0.01;
    double s = 0;
    while(a < b)
    {
        s+= dx / 6 * (F(a) + 4*F(a+dx/2) + F(a+dx));
        a+=dx;
    }
    return s;
}
int _tmain(int argc, _TCHAR* argv[])
{
    printf("%f",Integral(0,1));
    getchar();
    return 0;
}
Вместо 0 и 1 подставляй нужные пределы интегрирования

Добавлено через 1 минуту
Перепутал вместо косинуса синус написал
wolf1396
5 / 5 / 0
Регистрация: 07.05.2013
Сообщений: 192
14.05.2013, 21:59  [ТС]     Определенный интеграл #3
Цитата Сообщение от zombiecomatoz Посмотреть сообщение
Вот так вот можно:
C++
1
s+= dx / 6 * (F(a) + 4*F(a+dx/2) + F(a+dx));
можешь объяснить эту строчку?)

getchar - для расшифровки %f?
zombiecomatoz
13 / 13 / 1
Регистрация: 06.05.2013
Сообщений: 52
14.05.2013, 22:12     Определенный интеграл #4
Смотри метод Симпсона http://ru.wikipedia.org/wiki/%D0%A7%...BD%D0%B8%D0%B5
и про printf http://www.realcoding.net/article/view/1633
wolf1396
5 / 5 / 0
Регистрация: 07.05.2013
Сообщений: 192
14.05.2013, 22:20  [ТС]     Определенный интеграл #5
Цитата Сообщение от zombiecomatoz Посмотреть сообщение
мне то нужен метод трапеций, зачем метод Симпсона использовать (он выше метода Симпсона)?
zombiecomatoz
13 / 13 / 1
Регистрация: 06.05.2013
Сообщений: 52
14.05.2013, 22:26     Определенный интеграл #6
Для метода трапеций вот так будет
C++
1
2
3
4
5
6
7
8
9
10
11
double Integral(double a, double b)
{
    double dx = 0.01;
    double s = 0;
    while(a < b)
    {
        s+= dx*(F(a)+F(a+dx))/2;
        a+=dx;
    }
    return s;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2013, 22:39     Определенный интеграл
Еще ссылки по теме:

C++ определенный интеграл на указанном пользователем промежутке
C++ Найти определенный интеграл методом прямоугольников
Определенный интеграл методом трапеций C++

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

Или воспользуйтесь поиском по форуму:
wolf1396
5 / 5 / 0
Регистрация: 07.05.2013
Сообщений: 192
14.05.2013, 22:39  [ТС]     Определенный интеграл #7
Цитата Сообщение от zombiecomatoz Посмотреть сообщение
Для метода трапеций вот так будет
C++
1
2
3
4
5
6
7
8
9
10
11
double Integral(double a, double b)
{
    double dx = 0.01;
    double s = 0;
    while(a < b)
    {
        s+= dx*(F(a)+F(a+dx))/2;
        a+=dx;
    }
    return s;
}
да, спасибо, я вспомнил, как делается, на паскале как раз так и было сделано у меня
Yandex
Объявления
14.05.2013, 22:39     Определенный интеграл
Ответ Создать тему
Опции темы

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