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

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

Войти
Регистрация
Восстановить пароль
 
myxasa
14 / 14 / 1
Регистрация: 31.05.2012
Сообщений: 210
Записей в блоге: 2
#1

Разложить функцию в ряд - C++

21.02.2013, 21:36. Просмотров 424. Ответов 4
Метки нет (Все метки)

что то не получается.... и подскажите как мне в одну строку сделать т.е чтобы этого небыло st *= x; а было в одной строке slag = st * sin(i*(PI/4));
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
double snf(int n, double x)
{
    double sn=0,slag=1,st=x;
    for(int i = 0; i < n; i++)
    {
        slag = st * sin(i*(PI/4));
        st *= x;
        sn += slag;
    }
    return sn;
}
///////////
double f(double x)
{
    return (x*sin(PI/4))/(1-(2*x*cos(PI/4)+x*x));
}
 
/////////
cout<<f(10)<<"="<<snf(40,10);
Изображения
  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2013, 21:36     Разложить функцию в ряд
Посмотрите здесь:

Разложить функцию f (x) в ряд Тейлора - C++
Добрый вечер,прошу помочь с двумя задачами... Для заданных n и m вычислить значение функции в, разложив функцию f(x) в ряд Тейлора....

Разложить функцию sin(nx) в ряд Тейлора - C++
разложить функцию sin(nx) по ряду Тейлора

Разложить функцию в ряд Тейлора и построить график - C++
Ряд tan разложил надеюсь правильно) А вот как нарисовать графики не знаю. Помогите пожалуйста. #include &lt;iostream&gt; #include &lt;stdio.h&gt; ...

Разложить функцию f(x) в ряд Тейлора в окрестности указанной точки х0 - C++
Разложить функцию f(x) в ряд Тейлора в окрестности указанной точки х0. Найти область сходимости полученного ряда к этой функции.

Разложить ряд - C++
Требуется разложить ряд..

Разложить в ряд Тейлора - C++
Помогите,срочно пожалуйста!:cry: ex=1+x+x2/2!+x3/3!+...

Разложить sin(x) в ряд Тейлора - C++
Разложить sin(x) в ряд Тейлора.На экран должно выводиться n первых слагаемых разложения (x-0.16667x3+…). Значение n определяет...

Протабулировать функцию (ряд Тейлора) С++ - C++
Нужно протабулировать функцию, заданную расписанием в ряд Тейлора(см. ниже), в области ее определения на отрезке от А до Б (количество...

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

Вычислить заданную функцию разложением в ряд - C++
#include&lt;iostream&gt; #include&lt;cmath&gt; using namespace std; int main() { double s = 0, t, x, y, eps, k; int n; cin &gt;&gt; n &gt;&gt;...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
myxasa
14 / 14 / 1
Регистрация: 31.05.2012
Сообщений: 210
Записей в блоге: 2
21.02.2013, 21:53  [ТС]     Разложить функцию в ряд #2
Сделал так.. но не то:
C++
1
2
3
4
5
6
7
8
9
10
double snf(int n, double x)
{
    double sn=0,slag=1,st=x;
    for(int i = 1; i <= n; i++)
    {
        slag = slag  * x;
        sn += slag * sin(i*(PI/4));
    }
    return sn;
}
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
22.02.2013, 08:29     Разложить функцию в ряд #3
вы немного не понимаете концепцию ряда... ряд это бесконечно много сумм. И нельзя задавать самому n. поэтому такой цикл здесь не подойдет.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
double snf(double x,double eps){/*eps - это погрешность, т.е. ряд, если он сходится, 
с каждой итерацией увеличевается на всё меньшее значение и когда он при какой либо
итерации увеличится меньше чем, например 0.001, это значит мы посчитали ряд с погрешностью
0.001, соответственно вам нужно задать погрешность. Если же ряд расходится то при
каждой следующей итерации ряд будет увеличиваться на всё большую величину, в 
таком случае сумма ряда будет равна бесконечности.*/
    int i=1;
    double x1,x2=-1;
    do{
        x1=x2;
        x2=pow(x,i)*sin(i*PI/4);
    }while(abs(x2-x1)>=eps);
    return x2;
}
iifat
2225 / 1378 / 102
Регистрация: 05.06.2011
Сообщений: 3,799
22.02.2013, 08:45     Разложить функцию в ряд #4
Цитата Сообщение от myxasa Посмотреть сообщение
C++
6
7
slag = slag * x;
sn += slag * sin(i*(PI/4));
Если сильно хочется меньше строк, наверное, подойдёт
C++
1
sn += (slag *= x) * sin(i*(PI/4));
myxasa
14 / 14 / 1
Регистрация: 31.05.2012
Сообщений: 210
Записей в блоге: 2
22.02.2013, 13:20  [ТС]     Разложить функцию в ряд #5
мне нужно было функцию только описать... и все.. N идет на пару с E по заданию
Yandex
Объявления
22.02.2013, 13:20     Разложить функцию в ряд
Ответ Создать тему
Опции темы

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